# Evidence index — issue 24423

Head: 06f9f93de32dcf7c6479c4377a2f861e4fd1e9bd. Base: a46f80ee28.
Worktree: /home/ubuntu/wt/issue-24423. Date: 2026-10-24 UTC.
Rows captured: 0/0. Server-only change; empty render fixture matrix exemption, with red test and real-server transcripts. No screenshots or recordings are claimed.

Environment: Linux x86_64 (machine marker fs-01), Node v26.12.1, Nushell 0.116.1. Primary reports real isolated vp run dev with absolute Nu SHELL, web port 6457/server 14497, Chromium preview 1280x800. This evidence agent did not launch a browser/server or repeat primary's integrated run.

## Verified evidence

- Supplied BEFORE excerpt: base setup emits literal $? and primary reports 17-second hang before cancellation. This is a retained excerpt, not a complete raw terminal capture. Supplied red transcript reports two null exit-code failures on test commit cf70781080 atop base; not rerun here.
- Head source selects Nu by SHELL basename nu on non-Windows and uses try/catch with numeric completion. Only server runner and its tests changed from base.
- Fresh focused command: PATH=/tmp/issue-24423-nu/nu-0.116.1-x86_64-unknown-linux-gnu:$PATH vp test run apps/server/src/project/ProjectSetupScriptRunner.test.ts. Result: 1 file passed, 3 tests passed, zero skipped, 10.47s. Covers success 0, external failure 3, recovered failure 0; real nu subprocess with mocked TerminalManager, not PTY integration.
- Supplied primary real-terminal transcripts match head wrapper: echo setup-ok emits completion 0; bash -c 'exit 3' emits rendered error and completion 3. Final internal echo value is suppressed; do not claim setup-ok output preservation.
- Independent read-only SQLite extraction confirms success run preparing → starting → running → completed, assistant OK; failure run preparing → failed with startedAt null. Selected server trace confirms failure during run-setup-script caused by Setup script exited with 3. These corroborate primary's synchronous imported-Setup/new-worktree reproduction, release on success and withheld start on failure.
- t3.json is the success fixture (async:false, runOnWorktreeCreate:true). Primary reports editing its command through UI for failure; the supplied t3.json does not represent that failure variant.

## Unverified coverage

Successful idle setup terminal closure is unproven. Exact persisted setup-stage status and preparation-finished events were not captured by this agent. Async setup, settle-script caller, internal error fallback 1, explicit print/external output streaming and ordering, other shells/platforms, and desktop/mobile/remote connection modes were not exercised here. Recovered failure has test coverage only. No claim of exhaustive runtime coverage. Primary's environment/revision attribution is retained as reported; no independent capture of the running server process's loaded revision was made.

## Artifacts

[before-runtime.txt](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/b798386ec93e4297/before-runtime.txt)
[red-test.txt](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/1f6232d69a80d9f2/red-test.txt)
[green-test.txt](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/f4c50a501ed5b8b9/green-test.txt)
[after-success-terminal.txt](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/03ed8f03791adf5b/after-success-terminal.txt)
[after-failure-terminal.txt](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/e679e8f79de0822e/after-failure-terminal.txt)
[after-runtime-notes.txt](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/246c0422963055d8/after-runtime-notes.txt)
[t3.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/0861bb4f011a01ce/t3.json)
[runtime-verification.txt](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/fce956b0451ffa01/runtime-verification.txt)

## FRICTION

- Browser/server work was prohibited for this evidence step; primary already performed the integrated run. Focused tests were explicitly authorized despite possible dev-watch restart; no further primary attempt requested.
- Web fetch could not open matrix; curl read it successfully. Matrix was an earlier-head audit, so this agent compared current head diff directly; no changed render surface was added.
- Empty after-success-events.json was removed from evidence set and not uploaded. No screenshot, recording, or successful terminal-cleanup capture was invented.
- Public artifacts were inspected for credentials; completion-sentinel random identifiers are protocol markers, not credentials. Raw settings, secrets, full database and full server logs were not uploaded; runtime verification contains selected fields only.
- No repository edits, commits, pushes, comments, merges, PR creation, server launch or browser launch. Worktree remained clean. Artifacts remain outside repository. Proof-audit pass2 and PR authorship remain with lead.
