n1-gate (self-hosted, Windows, hfenduleam) Set up job 2026-06-21T07:19:06.3564494Z Current runner version: '2.335.1' n1-gate (self-hosted, Windows, hfenduleam) Set up job 2026-06-21T07:19:06.3571853Z Runner name: 'hfenduleam' n1-gate (self-hosted, Windows, hfenduleam) Set up job 2026-06-21T07:19:06.3572283Z Runner group name: 'Default' n1-gate (self-hosted, Windows, hfenduleam) Set up job 2026-06-21T07:19:06.3572801Z Machine name: 'HFENDULEAM' n1-gate (self-hosted, Windows, hfenduleam) Set up job 2026-06-21T07:19:06.3574654Z ##[group]GITHUB_TOKEN Permissions n1-gate (self-hosted, Windows, hfenduleam) Set up job 2026-06-21T07:19:06.3575910Z Contents: read n1-gate (self-hosted, Windows, hfenduleam) Set up job 2026-06-21T07:19:06.3576297Z Metadata: read n1-gate (self-hosted, Windows, hfenduleam) Set up job 2026-06-21T07:19:06.3576606Z Packages: read n1-gate (self-hosted, Windows, hfenduleam) Set up job 2026-06-21T07:19:06.3576932Z ##[endgroup] n1-gate (self-hosted, Windows, hfenduleam) Set up job 2026-06-21T07:19:06.3578153Z Secret source: Actions n1-gate (self-hosted, Windows, hfenduleam) Set up job 2026-06-21T07:19:06.3578581Z Prepare workflow directory n1-gate (self-hosted, Windows, hfenduleam) Set up job 2026-06-21T07:19:06.3944760Z Prepare all required actions n1-gate (self-hosted, Windows, hfenduleam) Set up job 2026-06-21T07:19:06.3969647Z Getting action download info n1-gate (self-hosted, Windows, hfenduleam) Set up job 2026-06-21T07:19:06.6837847Z Download action repository 'actions/checkout@v5' (SHA:93cb6efe18208431cddfb8368fd83d5badbf9bfd) n1-gate (self-hosted, Windows, hfenduleam) Set up job 2026-06-21T07:19:07.3212201Z Complete job name: n1-gate (self-hosted, Windows, hfenduleam) n1-gate (self-hosted, Windows, hfenduleam) Reap stray workspace daemons (pre-checkout exe-lock guard) 2026-06-21T07:19:07.3981735Z ##[group]Run Get-Process spt,notify-shell -ErrorAction SilentlyContinue | n1-gate (self-hosted, Windows, hfenduleam) Reap stray workspace daemons (pre-checkout exe-lock guard) 2026-06-21T07:19:07.3982681Z Get-Process spt,notify-shell -ErrorAction SilentlyContinue | n1-gate (self-hosted, Windows, hfenduleam) Reap stray workspace daemons (pre-checkout exe-lock guard) 2026-06-21T07:19:07.3983317Z  Where-Object { $_.Path -like "$env:GITHUB_WORKSPACE\*" } | n1-gate (self-hosted, Windows, hfenduleam) Reap stray workspace daemons (pre-checkout exe-lock guard) 2026-06-21T07:19:07.3983894Z  Stop-Process -Force -ErrorAction SilentlyContinue n1-gate (self-hosted, Windows, hfenduleam) Reap stray workspace daemons (pre-checkout exe-lock guard) 2026-06-21T07:19:07.3984385Z exit 0 n1-gate (self-hosted, Windows, hfenduleam) Reap stray workspace daemons (pre-checkout exe-lock guard) 2026-06-21T07:19:07.4089402Z shell: C:\Program Files\PowerShell\7\pwsh.EXE -command ". '{0}'" n1-gate (self-hosted, Windows, hfenduleam) Reap stray workspace daemons (pre-checkout exe-lock guard) 2026-06-21T07:19:07.4090037Z ##[endgroup] n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:19:07.8341647Z ##[group]Run actions/checkout@v5 n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:19:07.8342266Z with: n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:19:07.8342581Z fetch-depth: 0 n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:19:07.8342897Z repository: SaberMage/spt-core n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:19:07.8345794Z token: *** n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:19:07.8346100Z ssh-strict: true n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:19:07.8346421Z ssh-user: git n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:19:07.8346747Z persist-credentials: true n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:19:07.8347083Z clean: true n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:19:07.8347394Z sparse-checkout-cone-mode: true n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:19:07.8347842Z fetch-tags: false n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:19:07.8348167Z show-progress: true n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:19:07.8348483Z lfs: false n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:19:07.8348763Z submodules: false n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:19:07.8349067Z set-safe-directory: true n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:19:07.8349407Z ##[endgroup] n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:19:08.5140079Z Syncing repository: SaberMage/spt-core n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:19:08.5141563Z ##[group]Getting Git version info n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:19:08.5142196Z Working directory is 'C:\actions-runner\_work\spt-core\spt-core' n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:19:08.5402285Z [command]"c:\program files\git\cmd\git.exe" version n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:19:08.5606616Z git version 2.43.0.windows.1 n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:19:08.5633406Z ##[endgroup] n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:19:08.5644495Z Copying 'C:\Users\decid\.gitconfig' to 'C:\actions-runner\_work\_temp\306815bd-1b14-4d77-8143-cfd1e919247e\.gitconfig' n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:19:08.5657563Z Temporarily overriding HOME='C:\actions-runner\_work\_temp\306815bd-1b14-4d77-8143-cfd1e919247e' before making global git config changes n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:19:08.5658826Z Adding repository directory to the temporary git global config as a safe directory n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:19:08.5662444Z [command]"c:\program files\git\cmd\git.exe" config --global --add safe.directory C:\actions-runner\_work\spt-core\spt-core n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:19:08.5935341Z [command]"c:\program files\git\cmd\git.exe" config --local --get remote.origin.url n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:19:08.6117122Z https://github.com/SaberMage/spt-core n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:19:08.6144581Z ##[group]Removing previously created refs, to avoid conflicts n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:19:08.6148925Z [command]"c:\program files\git\cmd\git.exe" rev-parse --symbolic-full-name --verify --quiet HEAD n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:19:08.6353862Z HEAD n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:19:08.6599669Z ##[endgroup] n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:19:08.6603456Z [command]"c:\program files\git\cmd\git.exe" submodule status n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:19:09.0479731Z ##[group]Cleaning the repository n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:19:09.0483808Z [command]"c:\program files\git\cmd\git.exe" clean -ffdx n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:19:13.5709457Z Removing target/ n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:19:13.5740608Z [command]"c:\program files\git\cmd\git.exe" reset --hard HEAD n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:19:13.6377164Z HEAD is now at d0467b6 Merge 18416fd8accc291c428791c9e14a1089e267c9a8 into 86f20ac831033a20bd5e096b1c318a75249179f3 n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:19:13.6403903Z ##[endgroup] n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:19:13.6408529Z ##[group]Disabling automatic garbage collection n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:19:13.6413630Z [command]"c:\program files\git\cmd\git.exe" config --local gc.auto 0 n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:19:13.6643679Z ##[endgroup] n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:19:13.6644108Z ##[group]Setting up auth n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:19:13.6649872Z [command]"c:\program files\git\cmd\git.exe" config --local --name-only --get-regexp core\.sshCommand n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:19:13.6862046Z [command]"c:\program files\git\cmd\git.exe" submodule foreach --recursive "sh -c \"git config --local --name-only --get-regexp 'core\.sshCommand' && git config --local --unset-all 'core.sshCommand' || :\"" n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:19:14.0472845Z [command]"c:\program files\git\cmd\git.exe" config --local --name-only --get-regexp http\.https\:\/\/github\.com\/\.extraheader n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:19:14.0737747Z [command]"c:\program files\git\cmd\git.exe" submodule foreach --recursive "sh -c \"git config --local --name-only --get-regexp 'http\.https\:\/\/github\.com\/\.extraheader' && git config --local --unset-all 'http.https://github.com/.extraheader' || :\"" n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:19:14.4475433Z [command]"c:\program files\git\cmd\git.exe" config --local --name-only --get-regexp ^includeIf\.gitdir: n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:19:14.4684449Z [command]"c:\program files\git\cmd\git.exe" submodule foreach --recursive "git config --local --show-origin --name-only --get-regexp remote.origin.url" n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:19:14.8466905Z [command]"c:\program files\git\cmd\git.exe" config --local http.https://github.com/.extraheader "AUTHORIZATION: basic ***" n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:19:14.8754235Z ##[endgroup] n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:19:14.8754637Z ##[group]Fetching the repository n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:19:14.8764516Z [command]"c:\program files\git\cmd\git.exe" -c protocol.version=2 fetch --prune --no-recurse-submodules origin +refs/heads/*:refs/remotes/origin/* +refs/tags/*:refs/tags/* +62ed01167c9aa4bf0fe4930e6f0f9d7cfa297b3f:refs/remotes/pull/27/merge n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:19:17.1881484Z From https://github.com/SaberMage/spt-core n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:19:17.1881978Z 18416fd..71378d8 v0.13.0-p1b-ack-deadlock -> origin/v0.13.0-p1b-ack-deadlock n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:19:17.1882483Z * [new branch] wedge-trace-instrumentation -> origin/wedge-trace-instrumentation n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:19:17.1882889Z * [new branch] wedge-trace-v2 -> origin/wedge-trace-v2 n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:19:17.1883333Z * [new branch] wedge-trace-v3 -> origin/wedge-trace-v3 n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:19:17.1883738Z * [new branch] wedge-trace-v4 -> origin/wedge-trace-v4 n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:19:17.1884100Z * [new ref] 62ed01167c9aa4bf0fe4930e6f0f9d7cfa297b3f -> pull/27/merge n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:19:17.2001400Z ##[endgroup] n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:19:17.2001897Z ##[group]Determining the checkout info n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:19:17.2002293Z ##[endgroup] n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:19:17.2007615Z [command]"c:\program files\git\cmd\git.exe" sparse-checkout disable n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:19:17.2286993Z [command]"c:\program files\git\cmd\git.exe" config --local --unset-all extensions.worktreeConfig n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:19:17.2514794Z ##[group]Checking out the ref n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:19:17.2519692Z [command]"c:\program files\git\cmd\git.exe" checkout --progress --force refs/remotes/pull/27/merge n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:19:17.2982659Z Previous HEAD position was d0467b6 Merge 18416fd8accc291c428791c9e14a1089e267c9a8 into 86f20ac831033a20bd5e096b1c318a75249179f3 n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:19:17.2983416Z HEAD is now at 62ed011 Merge 77378b113f546c0fb9baed3bf6bd82525a0bb28f into 86f20ac831033a20bd5e096b1c318a75249179f3 n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:19:17.3007762Z ##[endgroup] n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:19:17.3254222Z [command]"c:\program files\git\cmd\git.exe" log -1 --format=%H n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:19:17.3464435Z 62ed01167c9aa4bf0fe4930e6f0f9d7cfa297b3f n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:17.3712353Z ##[group]Run $ErrorActionPreference = "Stop" n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:17.3713183Z $ErrorActionPreference = "Stop" n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:17.3713471Z $PIN = "0c95435" n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:17.3713738Z $CACHE = "$env:USERPROFILE\spt-n1-oldbroker" n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:17.3714008Z $BIN = "$CACHE\target\debug\spt.exe" n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:17.3714364Z $built = if (Test-Path "$CACHE\.builtpin") { (Get-Content "$CACHE\.builtpin").Trim() } else { "" } n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:17.3714740Z if (-not (Test-Path $BIN) -or $built -ne $PIN) { n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:17.3715071Z  if (Test-Path $CACHE) { Remove-Item -Recurse -Force $CACHE } n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:17.3715348Z  git clone $env:GITHUB_WORKSPACE $CACHE n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:17.3715576Z  git -C $CACHE checkout $PIN n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:17.3715863Z  cargo build --manifest-path "$CACHE\Cargo.toml" -p spt --bin spt n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:17.3716153Z  Set-Content "$CACHE\.builtpin" $PIN n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:17.3716431Z } n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:17.3716623Z $env:SPT_N1_OLD_BROKER = $BIN n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:17.3716876Z cargo test -p spt --test n1_pairing -- --nocapture n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:17.3784518Z shell: C:\Program Files\PowerShell\7\pwsh.EXE -command ". '{0}'" n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:17.3784799Z ##[endgroup] n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:24.4440077Z Compiling proc-macro2 v1.0.106 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:24.4440494Z Compiling quote v1.0.45 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:24.4440842Z Compiling unicode-ident v1.0.24 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:24.4441089Z Compiling cfg-if v1.0.4 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:24.4441402Z Compiling serde_core v1.0.228 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:24.4441778Z Compiling serde v1.0.228 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:24.4442073Z Compiling windows-link v0.2.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:24.4442396Z Compiling getrandom v0.3.4 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:24.4442664Z Compiling portable-atomic v1.13.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:24.4443236Z Compiling typenum v1.20.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:24.4443574Z Compiling version_check v0.9.5 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:24.4444028Z Compiling pin-project-lite v0.2.17 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:24.4444446Z Compiling critical-section v1.2.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:24.4444988Z Compiling shlex v2.0.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:24.4445467Z Compiling memchr v2.8.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:24.4445899Z Compiling find-msvc-tools v0.1.9 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:24.5738663Z Compiling windows-sys v0.61.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:24.5742224Z Compiling subtle v2.6.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:24.5886968Z Compiling futures-core v0.3.32 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:24.5956107Z Compiling smallvec v1.15.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:24.6244915Z Compiling equivalent v1.0.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:24.7488183Z Compiling bytes v1.11.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:24.7615301Z Compiling itoa v1.0.18 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:24.8254742Z Compiling semver v1.0.28 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:24.8528130Z Compiling stable_deref_trait v1.2.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:24.8830555Z Compiling log v0.4.32 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:24.9283990Z Compiling slab v0.4.12 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:24.9542630Z Compiling generic-array v0.14.7 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:24.9860285Z Compiling futures-io v0.3.32 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:25.0266196Z Compiling futures-sink v0.3.32 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:25.0794882Z Compiling futures-task v0.3.32 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:25.2457414Z Compiling rustc_version v0.4.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:25.2554050Z Compiling futures-channel v0.3.32 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:25.2860736Z Compiling hashbrown v0.17.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:25.3065379Z Compiling rustversion v1.0.22 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:25.3175757Z Compiling getrandom v0.2.17 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:25.3449074Z Compiling cpufeatures v0.2.17 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:25.5110557Z Compiling fnv v1.0.7 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:25.5835386Z Compiling libc v0.2.186 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:25.6373412Z Compiling cfg_aliases v0.2.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:25.6452285Z Compiling strsim v0.11.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:25.7487091Z Compiling rand_core v0.10.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:25.8326908Z Compiling writeable v0.6.3 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:25.9034378Z Compiling jobserver v0.1.34 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:25.9398725Z Compiling litemap v0.8.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:25.9402095Z Compiling autocfg v1.5.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:25.9847205Z Compiling icu_normalizer_data v2.2.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:26.0363579Z Compiling getrandom v0.4.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:26.0746564Z Compiling utf8_iter v1.0.4 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:26.1053119Z Compiling cc v1.2.63 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:26.2006990Z Compiling icu_properties_data v2.2.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:26.2468971Z Compiling fs_extra v1.3.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:26.3706849Z Compiling dunce v1.0.5 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:26.3826805Z Compiling ident_case v1.0.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:27.5164468Z Compiling crypto-common v0.1.7 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:27.5303511Z Compiling indexmap v2.14.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:28.1013580Z Compiling syn v2.0.117 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:28.1348953Z Compiling percent-encoding v2.3.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:28.1349654Z Compiling http v1.4.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:28.1670405Z Compiling unicode-segmentation v1.13.3 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:28.2062382Z Compiling thiserror v2.0.18 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:28.2411789Z Compiling cmake v0.1.58 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:28.2597317Z Compiling cpufeatures v0.3.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:28.4294234Z Compiling aws-lc-rs v1.17.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:28.5079733Z Compiling scopeguard v1.2.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:28.5457316Z Compiling form_urlencoded v1.2.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:28.5761253Z Compiling lock_api v0.4.14 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:28.6101790Z Compiling chacha20 v0.10.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:28.6210218Z Compiling block-buffer v0.10.4 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:28.6680000Z Compiling winapi v0.3.9 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:28.7010749Z Compiling bitflags v2.12.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:28.7839231Z Compiling untrusted v0.9.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:28.8063213Z Compiling digest v0.10.7 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:28.8228292Z Compiling num-traits v0.2.19 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:28.9336006Z Compiling rand v0.10.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:28.9441266Z Compiling windows-result v0.4.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:28.9564834Z Compiling windows-strings v0.5.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:28.9613092Z Compiling heck v0.5.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:29.0176069Z Compiling rustls v0.23.40 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:29.0535292Z Compiling convert_case v0.10.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:29.0563767Z Compiling unicode-xid v0.2.6 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:29.2444412Z Compiling anyhow v1.0.102 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:29.2815431Z Compiling atomic-waker v1.1.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:29.2978579Z Compiling const-oid v0.10.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:29.3196199Z Compiling httparse v1.10.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:29.3229414Z Compiling aws-lc-sys v0.41.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:29.3536237Z Compiling ring v0.17.14 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:29.4384347Z Compiling zerocopy v0.8.50 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:29.4596314Z Compiling parking_lot_core v0.9.12 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:29.4943898Z Compiling http-body v1.0.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:29.6168977Z Compiling curve25519-dalek v4.1.3 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:29.7149627Z Compiling hybrid-array v0.4.12 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:29.7464156Z Compiling ahash v0.8.12 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:29.9288017Z Compiling base64ct v1.8.3 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:29.9543464Z Compiling either v1.16.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:29.9950010Z Compiling fastrand v2.4.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:30.1190131Z Compiling powerfmt v0.2.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:30.4136546Z Compiling deranged v0.5.8 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:30.4225489Z Compiling pem-rfc7468 v1.0.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:30.4641333Z Compiling rand_core v0.6.4 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:30.4835388Z Compiling pkg-config v0.3.33 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:30.5069290Z Compiling tower-service v0.3.3 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:30.5775255Z Compiling vcpkg v0.2.15 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:30.6215636Z Compiling zmij v1.0.21 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:30.6349133Z Compiling data-encoding v2.11.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:30.7881084Z Compiling try-lock v0.2.5 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:30.9056972Z Compiling num-conv v0.2.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:30.9492330Z Compiling tinyvec_macros v0.1.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:30.9541053Z Compiling time-core v0.1.8 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:30.9738032Z Compiling base64 v0.22.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:31.0323712Z Compiling tinyvec v1.11.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:31.1680562Z Compiling want v0.3.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:31.1904203Z Compiling parking_lot v0.12.5 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:31.2413260Z Compiling block-buffer v0.12.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:31.2666219Z Compiling crypto-common v0.2.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:31.3891192Z Compiling sha2 v0.10.9 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:31.4501312Z Compiling vergen-lib v9.1.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:31.4785209Z Compiling inout v0.1.4 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:31.5545812Z Compiling socket2 v0.6.4 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:31.5820790Z Compiling mio v1.2.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:31.5885814Z Compiling libsqlite3-sys v0.30.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:31.6847287Z Compiling n0-future v0.3.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:31.7844025Z Compiling httpdate v1.0.3 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:31.7844564Z Compiling signature v2.2.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:32.1694240Z Compiling spin v0.10.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:32.2346865Z Compiling cordyceps v0.3.4 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:32.2377094Z Compiling serde_json v1.0.150 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:32.2631032Z Compiling winnow v1.0.3 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:32.2795307Z Compiling crossbeam-utils v0.8.21 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:32.2876815Z Compiling windows_x86_64_msvc v0.52.6 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:32.3449626Z Compiling diatomic-waker v0.2.3 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:32.4059422Z Compiling parking v2.2.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:32.6132296Z Compiling futures-buffered v0.2.13 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:32.6235445Z Compiling futures-lite v2.6.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:32.6435082Z Compiling digest v0.11.3 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:32.6519472Z Compiling ed25519 v2.2.3 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:32.6911618Z Compiling cipher v0.4.4 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:32.7971355Z Compiling vergen-lib v0.1.6 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:32.9568273Z Compiling vergen v9.1.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:32.9890940Z Compiling universal-hash v0.5.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:33.0392676Z Compiling curve25519-dalek v5.0.0-pre.6 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:33.0632799Z Compiling heapless v0.7.17 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:33.0672487Z Compiling noq-udp v0.10.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:33.1281365Z Compiling sync_wrapper v1.0.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:33.1894607Z Compiling synstructure v0.13.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:33.2130797Z Compiling darling_core v0.20.11 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:33.2760417Z Compiling opaque-debug v0.3.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:33.2841015Z Compiling byteorder v1.5.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:33.3005949Z Compiling toml_datetime v1.1.1+spec-1.1.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:33.3704825Z Compiling allocator-api2 v0.2.21 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:33.4924506Z Compiling hash32 v0.2.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:33.5346027Z Compiling polyval v0.6.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:33.7200926Z Compiling spin v0.9.8 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:33.7790277Z Compiling vergen-gitcl v1.0.8 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:33.7997591Z Compiling windows-threading v0.2.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:33.9292651Z Compiling toml_parser v1.1.2+spec-1.1.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:33.9837495Z Compiling tower-layer v0.3.3 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:34.0132130Z Compiling signature v3.0.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:34.0211020Z Compiling fallible-iterator v0.3.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:34.0640138Z Compiling ryu v1.0.23 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:34.0640820Z Compiling fallible-streaming-iterator v0.1.9 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:34.1481739Z Compiling ghash v0.5.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:34.2470716Z Compiling windows-targets v0.52.6 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:34.2535126Z Compiling aes v0.8.4 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:34.2900821Z Compiling ctr v0.9.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:34.3256203Z Compiling sha2 v0.11.0-rc.5 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:34.3614762Z Compiling fs2 v0.4.3 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:34.4430442Z Compiling time v0.3.47 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:34.4591140Z Compiling http-body-util v0.1.3 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:34.4665175Z Compiling aead v0.5.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:34.5597325Z Compiling toml_edit v0.25.12+spec-1.1.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:34.6281646Z Compiling ipconfig v0.3.4 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:34.6586976Z Compiling widestring v1.2.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:34.8583066Z Compiling aes-gcm v0.10.3 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:34.9399968Z Compiling windows-sys v0.59.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:34.9434531Z Compiling crossbeam-channel v0.5.15 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:34.9805042Z Compiling crossbeam-epoch v0.9.18 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:35.0287118Z Compiling blake3 v1.8.5 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:35.1258606Z Compiling windows-registry v0.6.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:35.2521604Z Compiling uuid v1.23.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:35.4838071Z Compiling memoffset v0.6.5 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:35.6694902Z Compiling proc-macro-crate v3.5.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:35.6892940Z Compiling acto v0.8.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:35.8564498Z Compiling netwatch v0.16.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:35.8927351Z Compiling noq v0.18.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:35.9347316Z Compiling foldhash v0.2.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:35.9398869Z Compiling thiserror v1.0.69 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:36.0358308Z Compiling rustc-hash v2.1.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:36.1073334Z Compiling serde_derive v1.0.228 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:36.1677335Z Compiling zeroize_derive v1.4.3 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:36.1677813Z Compiling zerofrom-derive v0.1.7 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:36.1926752Z Compiling yoke-derive v0.8.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:36.1946419Z Compiling tokio-macros v2.7.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:36.2146152Z Compiling futures-macro v0.3.32 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:36.2223538Z Compiling zerovec-derive v0.11.3 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:36.3820861Z Compiling displaydoc v0.2.6 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:36.4270412Z Compiling tracing-attributes v0.1.31 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:36.7054154Z Compiling curve25519-dalek-derive v0.1.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:36.8381209Z Compiling thiserror-impl v2.0.18 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:37.0677284Z Compiling zeroize v1.8.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:37.2112616Z Compiling tokio v1.52.3 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:37.3960888Z Compiling futures-util v0.3.32 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:37.4572678Z Compiling rustls-pki-types v1.14.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:37.4694550Z Compiling derive_more-impl v2.1.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:37.5867097Z Compiling darling_macro v0.20.11 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:37.5869385Z Compiling n0-error-macros v0.1.3 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:37.6327168Z Compiling windows-implement v0.60.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:38.2822382Z Compiling spez v0.1.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:38.5885219Z Compiling windows-interface v0.59.3 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:38.8014207Z Compiling zerofrom v0.1.8 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:38.8527897Z Compiling darling v0.20.11 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:38.8646731Z Compiling der v0.8.0-rc.10 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:38.8647223Z Compiling pin-project-internal v1.1.13 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:38.9408958Z Compiling data-encoding-macro-internal v0.1.18 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:39.0487483Z Compiling postcard-derive v0.2.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:39.1282275Z Compiling yoke v0.8.3 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:39.1476200Z Compiling derive_builder_core v0.20.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:39.2756885Z Compiling n0-error v0.1.3 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:39.3697314Z Compiling cobs v0.3.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:39.4832907Z Compiling data-encoding-macro v0.1.20 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:39.4924714Z Compiling windows-core v0.62.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:39.6153052Z Compiling zerovec v0.11.6 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:39.6284903Z Compiling zerotrie v0.2.4 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:39.6852321Z Compiling num_enum_derive v0.7.6 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:39.7795289Z Compiling enum-assoc v1.3.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:39.9875374Z Compiling iroh-metrics-derive v0.4.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:40.2091589Z Compiling strum_macros v0.28.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:40.3542131Z Compiling ed25519-dalek v2.2.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:40.3789943Z Compiling pin-project v1.1.13 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:40.5741499Z Compiling tinystr v0.8.3 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:40.5773769Z Compiling potential_utf v0.1.5 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:40.6281648Z Compiling derive_builder_macro v0.20.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:40.6428282Z Compiling spt-proto v0.12.1 (C:\actions-runner\_work\spt-core\spt-core\crates\spt-proto) n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:40.6691678Z Compiling windows-collections v0.3.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:40.8188455Z Compiling icu_collections v2.2.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:40.8333992Z Compiling icu_locale_core v2.2.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:40.9305860Z Compiling spki v0.8.0-rc.4 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:40.9700922Z Compiling windows-future v0.3.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:40.9707189Z Compiling windows-numerics v0.3.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:41.0815246Z Compiling derive_builder v0.20.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:41.2741127Z Compiling ipnet v2.12.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:41.2873336Z Compiling pkcs8 v0.11.0-rc.10 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:41.6658877Z Compiling ed25519 v3.0.0-rc.4 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:41.7800339Z Compiling prefix-trie v0.8.4 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:41.8609379Z Compiling windows v0.62.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:42.0025235Z Compiling once_cell v1.21.4 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:42.0175563Z Compiling chrono v0.4.45 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:42.4207866Z Compiling tracing-core v0.1.36 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:42.4290669Z Compiling async-trait v0.1.89 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:42.7073835Z Compiling icu_provider v2.2.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:42.7326334Z Compiling hashbrown v0.14.5 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:42.7902477Z Compiling postcard v1.1.3 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:42.8211772Z Compiling lru-slab v0.1.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:43.0096673Z Compiling tracing v0.1.44 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:43.0415347Z Compiling derive_more v2.1.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:43.1255235Z Compiling icu_properties v2.2.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:43.3343448Z Compiling icu_normalizer v2.2.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:43.3811287Z Compiling futures-executor v0.3.32 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:43.3819409Z Compiling ed25519-dalek v3.0.0-pre.6 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:43.5433246Z Compiling sorted-index-buffer v0.2.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:43.5434679Z Compiling tagptr v0.2.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:43.6166159Z Compiling futures v0.3.32 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:43.6428059Z Compiling hashlink v0.9.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:43.7493977Z Compiling ref-cast v1.0.25 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:43.7652293Z Compiling mac-addr v0.3.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:43.8351046Z Compiling xml-rs v0.8.28 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:43.8471175Z Compiling identity-hash v0.1.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:43.8996294Z Compiling moka v0.12.15 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:43.9056101Z Compiling iroh-metrics v0.38.3 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:44.0193233Z Compiling netdev v0.42.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:44.0514500Z Compiling strum v0.28.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:44.0554279Z Compiling iroh-relay v0.98.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:44.0593951Z Compiling toml_datetime v0.6.11 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:44.1692559Z Compiling rusqlite v0.32.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:44.1708600Z Compiling serde_spanned v0.6.9 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:44.3238366Z Compiling num_enum v0.7.6 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:44.5598306Z Compiling idna_adapter v1.2.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:44.6121516Z Compiling hashbrown v0.16.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:44.6243364Z Compiling thiserror-impl v1.0.69 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:44.6311595Z Compiling ref-cast-impl v1.0.25 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:44.8121683Z Compiling idna v1.1.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:44.8670260Z Compiling serde_derive_internals v0.29.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:45.1312038Z Compiling xmltree v0.10.3 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:45.2611886Z Compiling simple-dns v0.9.3 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:45.3647150Z Compiling url v2.5.8 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:45.3786468Z Compiling serial-core v0.4.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:45.5524075Z Compiling tokio-util v0.7.18 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:45.5847864Z Compiling spt-store v0.12.1 (C:\actions-runner\_work\spt-core\spt-core\crates\spt-store) n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:45.5994556Z Compiling tower v0.5.3 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:45.6210754Z Compiling aho-corasick v1.1.4 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:45.6386180Z Compiling arrayref v0.3.9 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:45.7434006Z Compiling resolv-conf v0.7.6 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:45.9089530Z Compiling sha1_smol v1.0.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:46.2831554Z Compiling hickory-proto v0.26.0-beta.4 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:46.2832151Z Compiling attohttpc v0.30.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:46.3158038Z Compiling iroh-base v0.98.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:46.3340052Z Compiling winreg v0.10.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:46.4060640Z Compiling simdutf8 v0.1.5 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:46.4194095Z Compiling constant_time_eq v0.4.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:46.5475388Z Compiling winnow v0.7.15 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:46.6435367Z Compiling tower-http v0.6.11 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:46.7403920Z Compiling regex-syntax v0.8.10 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:46.7702691Z Compiling toml_write v0.1.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:46.8432856Z Compiling h2 v0.4.14 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:47.0832294Z Compiling tokio-stream v0.1.18 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:47.2399705Z Compiling n0-watcher v0.6.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:47.3018854Z Compiling arrayvec v0.7.6 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:47.4772693Z Compiling smol_str v0.1.24 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:47.5838267Z Compiling iroh-dns v0.98.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:48.2753449Z Compiling spt-msg v0.12.1 (C:\actions-runner\_work\spt-core\spt-core\crates\spt-msg) n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:48.3270698Z Compiling schemars_derive v1.2.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:48.5041554Z Compiling lru v0.16.4 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:48.6039891Z Compiling serial-windows v0.4.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:48.8202301Z Compiling toml_edit v0.22.27 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:49.0680884Z Compiling webpki-roots v1.0.7 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:49.1341690Z Compiling darling_core v0.23.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:49.1501002Z Compiling seize v0.5.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:49.1950105Z Compiling hmac v0.12.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:49.2201208Z Compiling regex-automata v0.4.14 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:49.2444053Z Compiling serde_bytes v0.11.19 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:49.3882283Z Compiling iroh v0.98.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:49.5839116Z Compiling cmov v0.5.4 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:49.6623663Z Compiling pin-utils v0.1.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:49.7162770Z Compiling bitflags v1.3.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:49.7879329Z Compiling anstyle v1.0.14 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:49.8004397Z Compiling lazy_static v1.5.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:49.8373272Z Compiling dyn-clone v1.0.20 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:49.8479380Z Compiling once_cell_polyfill v1.70.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:49.9369740Z Compiling utf8parse v0.2.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:49.9721341Z Compiling ctutils v0.4.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:49.9985222Z Compiling shared_library v0.1.9 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:50.0269493Z Compiling anstyle-parse v1.0.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:50.0955998Z Compiling anstyle-wincon v3.0.11 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:50.1297013Z Compiling nix v0.25.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:50.2996474Z Compiling papaya v0.2.4 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:50.3249729Z Compiling swarm-discovery v0.6.0-alpha.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:50.3836055Z Compiling hkdf v0.12.4 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:50.3988577Z Compiling serial v0.4.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:50.4355212Z Compiling filedescriptor v0.8.3 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:50.5569784Z Compiling backon v1.6.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:50.6094030Z Compiling anstyle-query v1.1.5 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:50.6354288Z Compiling schemars v1.2.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:50.8142989Z Compiling shell-words v1.1.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:50.8436498Z Compiling is_terminal_polyfill v1.70.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:50.9704246Z Compiling foldhash v0.1.5 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:50.9973192Z Compiling colorchoice v1.0.5 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:50.9987358Z Compiling downcast-rs v1.2.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:51.0960726Z Compiling instability v0.3.12 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:51.1340668Z Compiling paste v1.0.15 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:51.1622601Z Compiling hashbrown v0.15.5 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:51.1746885Z Compiling portable-pty v0.8.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:51.2556897Z Compiling anstream v1.0.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:51.3951992Z Compiling toml v0.8.23 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:51.5348096Z Compiling hyper v1.10.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:51.9029765Z Compiling spake2 v0.4.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:51.9401731Z Compiling strum_macros v0.26.4 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:52.0468449Z Compiling crossterm_winapi v0.9.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:52.3608936Z Compiling regex v1.12.3 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:52.7462690Z Compiling terminal_size v0.4.4 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:52.7556191Z Compiling itertools v0.13.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:52.7711090Z Compiling sha1 v0.10.6 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:52.9688340Z Compiling spt-runtime v0.12.1 (C:\actions-runner\_work\spt-core\spt-core\crates\spt-runtime) n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:53.1284028Z Compiling wmi v0.18.4 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:53.2021594Z Compiling castaway v0.2.4 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:53.2134723Z Compiling static_assertions v1.1.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:53.3489577Z Compiling darling_macro v0.23.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:53.3717859Z Compiling unicode-width v0.1.14 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:53.4841539Z Compiling clap_lex v1.1.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:53.8088332Z Compiling hyper-util v0.1.20 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:53.8998245Z Compiling doctest-file v1.1.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:53.9273652Z Compiling indoc v2.0.7 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:53.9927259Z Compiling darling v0.23.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:54.1042405Z Compiling recvmsg v1.0.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:54.5223015Z Compiling strum v0.26.3 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:54.5534245Z Compiling clap_builder v4.6.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:54.7505484Z Compiling interprocess v2.4.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:54.8191188Z Compiling compact_str v0.8.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:55.1169806Z Compiling unicode-truncate v1.1.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:55.1865273Z Compiling crossterm v0.28.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:55.1887290Z Compiling lru v0.12.5 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:55.3895582Z Compiling spt-term v0.12.1 (C:\actions-runner\_work\spt-core\spt-core\crates\spt-term) n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:55.4358947Z Compiling spt-live v0.12.1 (C:\actions-runner\_work\spt-core\spt-core\crates\spt-live) n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:55.8088070Z Compiling igd-next v0.17.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:55.8979222Z Compiling clap_derive v4.6.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:55.9363619Z Compiling error-code v3.3.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:55.9754593Z Compiling cassowary v0.3.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:56.1548883Z Compiling unicode-width v0.2.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:56.5307005Z Compiling clipboard-win v5.4.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:56.6583942Z Compiling ratatui v0.29.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:56.7525231Z Compiling nucleo-matcher v0.3.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:56.9040984Z Compiling portmapper v0.16.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:56.9333466Z Compiling qrcode v0.14.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:57.0764704Z Compiling tempfile v3.27.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:19:58.1940816Z Compiling clap v4.6.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:20:10.2159154Z Compiling rustls-webpki v0.103.13 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:20:14.1118788Z Compiling tokio-rustls v0.26.4 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:20:14.1119130Z Compiling noq-proto v0.17.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:20:14.1119446Z Compiling rustls-platform-verifier v0.7.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:20:14.3047711Z Compiling hyper-rustls v0.27.9 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:20:14.3048164Z Compiling hickory-net v0.26.0-beta.4 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:20:14.3048538Z Compiling tokio-websockets v0.13.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:20:14.5152904Z Compiling reqwest v0.13.4 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:20:15.5790583Z Compiling hickory-resolver v0.26.0-beta.4 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:20:34.3800457Z Compiling spt-net v0.12.1 (C:\actions-runner\_work\spt-core\spt-core\crates\spt-net) n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:20:35.9039634Z Compiling spt-daemon v0.12.1 (C:\actions-runner\_work\spt-core\spt-core\crates\spt-daemon) n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:20:45.6412876Z Compiling spt v0.12.1 (C:\actions-runner\_work\spt-core\spt-core\crates\spt) n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:20:52.6399293Z Finished `test` profile [unoptimized + debuginfo] target(s) in 1m 34s n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:20:52.6615844Z Running tests\n1_pairing.rs (target\debug\deps\n1_pairing-0cc097b5ef582871.exe) n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:20:52.7103866Z n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:20:52.7104165Z running 1 test n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:21:00.8979823Z test new_brain_serves_against_old_broker ... ok n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:21:00.8980155Z n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:21:00.8980483Z test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 8.19s n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T07:21:00.8980897Z n1-gate (self-hosted, Windows, hfenduleam) Post Run actions/checkout@v5 2026-06-21T07:21:00.9597263Z Post job cleanup. n1-gate (self-hosted, Windows, hfenduleam) Post Run actions/checkout@v5 2026-06-21T07:21:01.0769983Z [command]"c:\program files\git\cmd\git.exe" version n1-gate (self-hosted, Windows, hfenduleam) Post Run actions/checkout@v5 2026-06-21T07:21:01.1003668Z git version 2.43.0.windows.1 n1-gate (self-hosted, Windows, hfenduleam) Post Run actions/checkout@v5 2026-06-21T07:21:01.1042571Z Copying 'C:\Users\decid\.gitconfig' to 'C:\actions-runner\_work\_temp\0eebe8d3-8e98-4c24-9fc0-077a891772cd\.gitconfig' n1-gate (self-hosted, Windows, hfenduleam) Post Run actions/checkout@v5 2026-06-21T07:21:01.1055985Z Temporarily overriding HOME='C:\actions-runner\_work\_temp\0eebe8d3-8e98-4c24-9fc0-077a891772cd' before making global git config changes n1-gate (self-hosted, Windows, hfenduleam) Post Run actions/checkout@v5 2026-06-21T07:21:01.1056465Z Adding repository directory to the temporary git global config as a safe directory n1-gate (self-hosted, Windows, hfenduleam) Post Run actions/checkout@v5 2026-06-21T07:21:01.1061547Z [command]"c:\program files\git\cmd\git.exe" config --global --add safe.directory C:\actions-runner\_work\spt-core\spt-core n1-gate (self-hosted, Windows, hfenduleam) Post Run actions/checkout@v5 2026-06-21T07:21:01.1319580Z [command]"c:\program files\git\cmd\git.exe" config --local --name-only --get-regexp core\.sshCommand n1-gate (self-hosted, Windows, hfenduleam) Post Run actions/checkout@v5 2026-06-21T07:21:01.1574946Z [command]"c:\program files\git\cmd\git.exe" submodule foreach --recursive "sh -c \"git config --local --name-only --get-regexp 'core\.sshCommand' && git config --local --unset-all 'core.sshCommand' || :\"" n1-gate (self-hosted, Windows, hfenduleam) Post Run actions/checkout@v5 2026-06-21T07:21:01.5833769Z [command]"c:\program files\git\cmd\git.exe" config --local --name-only --get-regexp http\.https\:\/\/github\.com\/\.extraheader n1-gate (self-hosted, Windows, hfenduleam) Post Run actions/checkout@v5 2026-06-21T07:21:01.6058515Z http.https://github.com/.extraheader n1-gate (self-hosted, Windows, hfenduleam) Post Run actions/checkout@v5 2026-06-21T07:21:01.6091346Z [command]"c:\program files\git\cmd\git.exe" config --local --unset-all http.https://github.com/.extraheader n1-gate (self-hosted, Windows, hfenduleam) Post Run actions/checkout@v5 2026-06-21T07:21:01.6384993Z [command]"c:\program files\git\cmd\git.exe" submodule foreach --recursive "sh -c \"git config --local --name-only --get-regexp 'http\.https\:\/\/github\.com\/\.extraheader' && git config --local --unset-all 'http.https://github.com/.extraheader' || :\"" n1-gate (self-hosted, Windows, hfenduleam) Post Run actions/checkout@v5 2026-06-21T07:21:02.0364290Z [command]"c:\program files\git\cmd\git.exe" config --local --name-only --get-regexp ^includeIf\.gitdir: n1-gate (self-hosted, Windows, hfenduleam) Post Run actions/checkout@v5 2026-06-21T07:21:02.0600515Z [command]"c:\program files\git\cmd\git.exe" submodule foreach --recursive "git config --local --show-origin --name-only --get-regexp remote.origin.url" n1-gate (self-hosted, Windows, hfenduleam) Complete job 2026-06-21T07:21:02.4842253Z Cleaning up orphan processes traceability Set up job 2026-06-21T07:19:06.2495115Z Current runner version: '2.335.1' traceability Set up job 2026-06-21T07:19:06.2500475Z Runner name: 'kitsubito' traceability Set up job 2026-06-21T07:19:06.2501025Z Runner group name: 'Default' traceability Set up job 2026-06-21T07:19:06.2501690Z Machine name: 'KITSUBITO' traceability Set up job 2026-06-21T07:19:06.2503572Z ##[group]GITHUB_TOKEN Permissions traceability Set up job 2026-06-21T07:19:06.2505308Z Contents: read traceability Set up job 2026-06-21T07:19:06.2505747Z Metadata: read traceability Set up job 2026-06-21T07:19:06.2506139Z Packages: read traceability Set up job 2026-06-21T07:19:06.2506524Z ##[endgroup] traceability Set up job 2026-06-21T07:19:06.2508087Z Secret source: Actions traceability Set up job 2026-06-21T07:19:06.2508612Z Prepare workflow directory traceability Set up job 2026-06-21T07:19:06.2884384Z Prepare all required actions traceability Set up job 2026-06-21T07:19:06.2914101Z Getting action download info traceability Set up job 2026-06-21T07:19:06.6687809Z Download action repository 'actions/checkout@v5' (SHA:93cb6efe18208431cddfb8368fd83d5badbf9bfd) traceability Set up job 2026-06-21T07:19:07.1816209Z Complete job name: traceability traceability Run actions/checkout@v5 2026-06-21T07:19:07.2625903Z ##[group]Run actions/checkout@v5 traceability Run actions/checkout@v5 2026-06-21T07:19:07.2626664Z with: traceability Run actions/checkout@v5 2026-06-21T07:19:07.2627045Z repository: SaberMage/spt-core traceability Run actions/checkout@v5 2026-06-21T07:19:07.2630237Z token: *** traceability Run actions/checkout@v5 2026-06-21T07:19:07.2630604Z ssh-strict: true traceability Run actions/checkout@v5 2026-06-21T07:19:07.2630971Z ssh-user: git traceability Run actions/checkout@v5 2026-06-21T07:19:07.2631351Z persist-credentials: true traceability Run actions/checkout@v5 2026-06-21T07:19:07.2631741Z clean: true traceability Run actions/checkout@v5 2026-06-21T07:19:07.2632112Z sparse-checkout-cone-mode: true traceability Run actions/checkout@v5 2026-06-21T07:19:07.2632541Z fetch-depth: 1 traceability Run actions/checkout@v5 2026-06-21T07:19:07.2632903Z fetch-tags: false traceability Run actions/checkout@v5 2026-06-21T07:19:07.2633286Z show-progress: true traceability Run actions/checkout@v5 2026-06-21T07:19:07.2633766Z lfs: false traceability Run actions/checkout@v5 2026-06-21T07:19:07.2634118Z submodules: false traceability Run actions/checkout@v5 2026-06-21T07:19:07.2634505Z set-safe-directory: true traceability Run actions/checkout@v5 2026-06-21T07:19:07.2635105Z ##[endgroup] traceability Run actions/checkout@v5 2026-06-21T07:19:07.3417923Z Syncing repository: SaberMage/spt-core traceability Run actions/checkout@v5 2026-06-21T07:19:07.3419480Z ##[group]Getting Git version info traceability Run actions/checkout@v5 2026-06-21T07:19:07.3420119Z Working directory is '/home/reavus/actions-runner/_work/spt-core/spt-core' traceability Run actions/checkout@v5 2026-06-21T07:19:07.3421069Z [command]/usr/bin/git version traceability Run actions/checkout@v5 2026-06-21T07:19:07.3421485Z git version 2.43.0 traceability Run actions/checkout@v5 2026-06-21T07:19:07.3428762Z ##[endgroup] traceability Run actions/checkout@v5 2026-06-21T07:19:07.3440057Z Temporarily overriding HOME='/home/reavus/actions-runner/_work/_temp/bd15ef10-1786-4ae5-b8cf-630ec93390ec' before making global git config changes traceability Run actions/checkout@v5 2026-06-21T07:19:07.3441230Z Adding repository directory to the temporary git global config as a safe directory traceability Run actions/checkout@v5 2026-06-21T07:19:07.3443405Z [command]/usr/bin/git config --global --add safe.directory /home/reavus/actions-runner/_work/spt-core/spt-core traceability Run actions/checkout@v5 2026-06-21T07:19:07.3474399Z [command]/usr/bin/git config --local --get remote.origin.url traceability Run actions/checkout@v5 2026-06-21T07:19:07.3491110Z https://github.com/SaberMage/spt-core traceability Run actions/checkout@v5 2026-06-21T07:19:07.3500740Z ##[group]Removing previously created refs, to avoid conflicts traceability Run actions/checkout@v5 2026-06-21T07:19:07.3503170Z [command]/usr/bin/git rev-parse --symbolic-full-name --verify --quiet HEAD traceability Run actions/checkout@v5 2026-06-21T07:19:07.3521323Z HEAD traceability Run actions/checkout@v5 2026-06-21T07:19:07.3548188Z ##[endgroup] traceability Run actions/checkout@v5 2026-06-21T07:19:07.3549288Z [command]/usr/bin/git submodule status traceability Run actions/checkout@v5 2026-06-21T07:19:07.3736294Z ##[group]Cleaning the repository traceability Run actions/checkout@v5 2026-06-21T07:19:07.3739610Z [command]/usr/bin/git clean -ffdx traceability Run actions/checkout@v5 2026-06-21T07:19:08.8631382Z Removing target/ traceability Run actions/checkout@v5 2026-06-21T07:19:08.8644615Z [command]/usr/bin/git reset --hard HEAD traceability Run actions/checkout@v5 2026-06-21T07:19:08.8777644Z HEAD is now at 18416fd8a ci+test: --no-fail-fast both phases; robust spawn_env poll; Unix-only wedge pacing (doyle RUN#1 batch) traceability Run actions/checkout@v5 2026-06-21T07:19:08.8783941Z ##[endgroup] traceability Run actions/checkout@v5 2026-06-21T07:19:08.8785448Z ##[group]Disabling automatic garbage collection traceability Run actions/checkout@v5 2026-06-21T07:19:08.8789183Z [command]/usr/bin/git config --local gc.auto 0 traceability Run actions/checkout@v5 2026-06-21T07:19:08.8817007Z ##[endgroup] traceability Run actions/checkout@v5 2026-06-21T07:19:08.8818392Z ##[group]Setting up auth traceability Run actions/checkout@v5 2026-06-21T07:19:08.8822518Z [command]/usr/bin/git config --local --name-only --get-regexp core\.sshCommand traceability Run actions/checkout@v5 2026-06-21T07:19:08.8849958Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'core\.sshCommand' && git config --local --unset-all 'core.sshCommand' || :" traceability Run actions/checkout@v5 2026-06-21T07:19:08.9043327Z [command]/usr/bin/git config --local --name-only --get-regexp http\.https\:\/\/github\.com\/\.extraheader traceability Run actions/checkout@v5 2026-06-21T07:19:08.9070681Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'http\.https\:\/\/github\.com\/\.extraheader' && git config --local --unset-all 'http.https://github.com/.extraheader' || :" traceability Run actions/checkout@v5 2026-06-21T07:19:08.9256299Z [command]/usr/bin/git config --local --name-only --get-regexp ^includeIf\.gitdir: traceability Run actions/checkout@v5 2026-06-21T07:19:08.9285295Z [command]/usr/bin/git submodule foreach --recursive git config --local --show-origin --name-only --get-regexp remote.origin.url traceability Run actions/checkout@v5 2026-06-21T07:19:08.9467793Z [command]/usr/bin/git config --local http.https://github.com/.extraheader AUTHORIZATION: basic *** traceability Run actions/checkout@v5 2026-06-21T07:19:08.9497995Z ##[endgroup] traceability Run actions/checkout@v5 2026-06-21T07:19:08.9499596Z ##[group]Fetching the repository traceability Run actions/checkout@v5 2026-06-21T07:19:08.9505025Z [command]/usr/bin/git -c protocol.version=2 fetch --no-tags --prune --no-recurse-submodules --depth=1 origin +62ed01167c9aa4bf0fe4930e6f0f9d7cfa297b3f:refs/remotes/pull/27/merge traceability Run actions/checkout@v5 2026-06-21T07:19:09.4033081Z From https://github.com/SaberMage/spt-core traceability Run actions/checkout@v5 2026-06-21T07:19:09.4034590Z * [new ref] 62ed01167c9aa4bf0fe4930e6f0f9d7cfa297b3f -> pull/27/merge traceability Run actions/checkout@v5 2026-06-21T07:19:09.4053105Z ##[endgroup] traceability Run actions/checkout@v5 2026-06-21T07:19:09.4053600Z ##[group]Determining the checkout info traceability Run actions/checkout@v5 2026-06-21T07:19:09.4055387Z ##[endgroup] traceability Run actions/checkout@v5 2026-06-21T07:19:09.4060050Z [command]/usr/bin/git sparse-checkout disable traceability Run actions/checkout@v5 2026-06-21T07:19:09.4101152Z [command]/usr/bin/git config --local --unset-all extensions.worktreeConfig traceability Run actions/checkout@v5 2026-06-21T07:19:09.4124096Z ##[group]Checking out the ref traceability Run actions/checkout@v5 2026-06-21T07:19:09.4133056Z [command]/usr/bin/git checkout --progress --force refs/remotes/pull/27/merge traceability Run actions/checkout@v5 2026-06-21T07:19:09.4217079Z Previous HEAD position was 18416fd8a ci+test: --no-fail-fast both phases; robust spawn_env poll; Unix-only wedge pacing (doyle RUN#1 batch) traceability Run actions/checkout@v5 2026-06-21T07:19:09.4219462Z HEAD is now at 62ed01167 Merge 77378b113f546c0fb9baed3bf6bd82525a0bb28f into 86f20ac831033a20bd5e096b1c318a75249179f3 traceability Run actions/checkout@v5 2026-06-21T07:19:09.4225321Z ##[endgroup] traceability Run actions/checkout@v5 2026-06-21T07:19:09.4260393Z [command]/usr/bin/git log -1 --format=%H traceability Run actions/checkout@v5 2026-06-21T07:19:09.4282566Z 62ed01167c9aa4bf0fe4930e6f0f9d7cfa297b3f traceability Install traceable-reqs 2026-06-21T07:19:09.4474140Z ##[group]Run WANT=0.1.2 traceability Install traceable-reqs 2026-06-21T07:19:09.4474523Z WANT=0.1.2 traceability Install traceable-reqs 2026-06-21T07:19:09.4474792Z BIN="$HOME/.local/bin/traceable-reqs" traceability Install traceable-reqs 2026-06-21T07:19:09.4475191Z if [ -x "$BIN" ] && "$BIN" --version | grep -q " $WANT\$"; then traceability Install traceable-reqs 2026-06-21T07:19:09.4475535Z  ln -sf "$BIN" ./traceable-reqs traceability Install traceable-reqs 2026-06-21T07:19:09.4475807Z else traceability Install traceable-reqs 2026-06-21T07:19:09.4476112Z  # Build OUTSIDE the checkout: a clone inside it gets adopted by traceability Install traceable-reqs 2026-06-21T07:19:09.4476512Z  # the spt-core cargo workspace and refuses to build. traceability Install traceable-reqs 2026-06-21T07:19:09.4476845Z  SRC="$RUNNER_TEMP/tr-src" traceability Install traceable-reqs 2026-06-21T07:19:09.4477114Z  rm -rf "$SRC" traceability Install traceable-reqs 2026-06-21T07:19:09.4477380Z  git clone --depth 1 --branch "v$WANT" \ traceability Install traceable-reqs 2026-06-21T07:19:09.4477830Z  "https://x-access-token:${GH_TOKEN}@github.com/BigscreenVR/traceable-reqs" "$SRC" traceability Install traceable-reqs 2026-06-21T07:19:09.4478354Z  cargo build --release --manifest-path "$SRC/rust/Cargo.toml" traceability Install traceable-reqs 2026-06-21T07:19:09.4478740Z  mkdir -p "$HOME/.local/bin" traceability Install traceable-reqs 2026-06-21T07:19:09.4479135Z  cp "$SRC/rust/target/release/traceable-reqs" "$BIN" traceability Install traceable-reqs 2026-06-21T07:19:09.4479460Z  ln -sf "$BIN" ./traceable-reqs traceability Install traceable-reqs 2026-06-21T07:19:09.4479713Z fi traceability Install traceable-reqs 2026-06-21T07:19:09.4479938Z ./traceable-reqs --version traceability Install traceable-reqs 2026-06-21T07:19:09.4494999Z shell: /usr/bin/bash -e {0} traceability Install traceable-reqs 2026-06-21T07:19:09.4495333Z env: traceability Install traceable-reqs 2026-06-21T07:19:09.4495932Z GH_TOKEN: *** traceability Install traceable-reqs 2026-06-21T07:19:09.4496158Z ##[endgroup] traceability Install traceable-reqs 2026-06-21T07:19:09.4565997Z traceable-reqs 0.1.2 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4621629Z ##[group]Run ./traceable-reqs check --json traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4622007Z ./traceable-reqs check --json traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4634623Z shell: /usr/bin/bash -e {0} traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4634900Z ##[endgroup] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4861623Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4862135Z "schemaVersion": 1, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4862950Z "summary": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4863320Z "requirementCount": 275, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4863726Z "completeCount": 275, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4864117Z "incompleteCount": 0, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4864502Z "findingCount": 0 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4864851Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4865171Z "requirements": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4865507Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4865887Z "id": "REQ-API-1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4866392Z "title": "api prefix and adapter_name on every machinery invocation", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4866960Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4867332Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4867661Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4867990Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4868360Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4868668Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4869079Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4869414Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4869804Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4870151Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4870471Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4871417Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4871798Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4872141Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4872508Z "path": "crates/spt/src/api/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4872972Z "line": 15 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4873315Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4873625Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4873929Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4874239Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4874573Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4874949Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4875292Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4875673Z "path": "crates/spt/tests/contract_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4876164Z "line": 13 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4876505Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4876824Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4877135Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4877445Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4877774Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4878144Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4878487Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4878854Z "path": "crates/spt/src/api/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4879358Z "line": 717 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4879716Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4880025Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4880387Z "path": "crates/spt/src/api/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4880816Z "line": 804 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4881160Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4881468Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4881766Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4882077Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4882372Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4882673Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4883012Z "id": "REQ-API-2", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4883603Z "title": "The api subcommand surface (bind/listen/poll/state/worker/boundary/...)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4884237Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4884608Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4884923Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4885242Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4885562Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4885886Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4886219Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4886566Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4886945Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4887284Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4887608Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4887962Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4888339Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4888691Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4889134Z "path": "crates/spt-store/src/history.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4889600Z "line": 17 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4889956Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4890276Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4890962Z "path": "crates/spt/src/api/delivery.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4891424Z "line": 20 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4891759Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4892081Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4892456Z "path": "crates/spt/src/api/delivery.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4893081Z "line": 142 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4893434Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4893758Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4894143Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4894601Z "line": 24 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4894962Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4895287Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4895664Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4896127Z "line": 41 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4896465Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4896784Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4897160Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4897611Z "line": 213 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4897973Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4898283Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4898660Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4899175Z "line": 255 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4899533Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4899848Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4900231Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4900687Z "line": 334 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4901040Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4901374Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4901757Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4902203Z "line": 397 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4902556Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4902873Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4903253Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4903712Z "line": 436 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4904069Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4904375Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4904761Z "path": "crates/spt/src/api/worker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4905215Z "line": 17 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4905561Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4905876Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4906267Z "path": "crates/spt/src/api/worker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4906776Z "line": 30 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4907155Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4907489Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4907868Z "path": "crates/spt/src/api/worker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4908327Z "line": 63 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4908685Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4909291Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4909673Z "path": "crates/spt/src/api/worker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4910126Z "line": 77 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4910479Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4910800Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4911100Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4911396Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4911720Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4912086Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4912434Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4912821Z "path": "crates/spt/tests/contract_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4913320Z "line": 14 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4913714Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4914052Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4914497Z "path": "crates/spt/tests/contract_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4915021Z "line": 187 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4915421Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4915785Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4916150Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4916513Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4916908Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4917327Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4917725Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4918152Z "path": "crates/spt-store/src/history.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4918654Z "line": 82 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4919174Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4919527Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4920166Z "path": "crates/spt/src/api/delivery.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4920672Z "line": 279 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4921043Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4921398Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4921827Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4922514Z "line": 709 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4922877Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4923220Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4923647Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4924146Z "line": 720 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4924537Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4924875Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4925309Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4925819Z "line": 873 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4926210Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4926543Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4926938Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4927425Z "line": 919 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4927807Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4928136Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4928531Z "path": "crates/spt/src/api/worker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4929067Z "line": 143 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4929434Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4929753Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4930139Z "path": "crates/spt/src/api/worker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4930569Z "line": 187 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4930922Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4931237Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4931547Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4931831Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4932135Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4932430Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4932745Z "id": "REQ-API-3", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4933207Z "title": "commune/signoff are file-drops, not commands", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4933733Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4934109Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4934431Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4934754Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4935064Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4935383Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4935708Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4936056Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4936426Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4936775Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4937103Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4937451Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4937813Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4938152Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4938530Z "path": "crates/spt-live/src/ingest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4939039Z "line": 27 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4939395Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4939708Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4964502Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4965021Z "line": 566 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4965375Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4965685Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4965992Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4966304Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4966658Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4967035Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4967378Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4967779Z "path": "crates/spt/tests/contract_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4968251Z "line": 261 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4968610Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4968922Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4969299Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4969609Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4969952Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4970314Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4970676Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4971062Z "path": "crates/spt-live/src/ingest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4971517Z "line": 280 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4971880Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4972186Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4972581Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4973033Z "line": 948 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4973383Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4973953Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4974274Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4974565Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4974856Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4975152Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4975452Z "id": "REQ-API-4", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4978535Z "title": "api resolves the adapter manifest (+ profile + install dir) from `--adapter name:profile` via the registry when `--manifest` is omitted; `--manifest` becomes an optional OVERRIDE (unregistered / local-dev manifests). Removes the require-both-flags redundancy — a registered adapter's live bringup / digest / capability needs only `--adapter` — and yields the precise install dir (the record's source_dir) rather than the --manifest parent, closing the copy-mode psyche-binary edge (v0.8.0)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4981255Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4981631Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4981953Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4982258Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4982572Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4982883Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4983212Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4983545Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4983923Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4984257Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4984594Z "path": "CONTEXT.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4985012Z "line": 149 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4985355Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4985674Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4985970Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4986271Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4986609Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4986980Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4987311Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4987706Z "path": "crates/spt/src/api/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4988184Z "line": 484 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4988555Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4988918Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4989314Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4989624Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4989960Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4990362Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4990687Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4990991Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4991321Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4991697Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4992022Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4992395Z "path": "crates/spt/src/api/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4992837Z "line": 657 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4993185Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4993490Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4993858Z "path": "crates/spt/src/api/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4994292Z "line": 681 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4994635Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4994946Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4995314Z "path": "crates/spt/src/api/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4995757Z "line": 705 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4996111Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4996430Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4996725Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4997026Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4997312Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4997616Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4997928Z "id": "REQ-ARCH-1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4998382Z "title": "Many small acyclically-layered crates", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4998754Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4999125Z "impl" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4999554Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.4999874Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5000208Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5000559Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5000817Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5001046Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5001247Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5001475Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5001718Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5001933Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5002176Z "path": "crates/spt-msg/src/lib.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5002467Z "line": 18 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5002700Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5003040Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5003298Z "path": "crates/spt-proto/src/lib.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5003584Z "line": 12 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5003814Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5004013Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5004261Z "path": "crates/spt-store/src/lib.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5004652Z "line": 12 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5004876Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5005073Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5005267Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5005473Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5005690Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5005935Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5006166Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5006366Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5006593Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5006842Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5007062Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5007252Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5007452Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5007649Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5007867Z "id": "REQ-ARCH-2", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5008204Z "title": "Public SDK surface is spt-proto, spt-runtime, spt-msg", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5008554Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5008784Z "impl" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5009108Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5009314Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5009543Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5009756Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5009995Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5010220Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5010414Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5010639Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5010879Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5011114Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5011367Z "path": "crates/spt-runtime/src/lib.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5011662Z "line": 18 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5011887Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5012083Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5012283Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5012480Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5012693Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5012945Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5013175Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5013369Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5013586Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5013830Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5014054Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5014258Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5014440Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5014635Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5014849Z "id": "REQ-ARCH-3", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5015217Z "title": "Wire-protocol version independent of crate semver, N-1 compat window", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5015613Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5015851Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5016066Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5016264Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5016468Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5016673Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5016896Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5017144Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5017374Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5017575Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5017783Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5018022Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5018242Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5018500Z "path": "crates/spt-proto/src/version.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5018793Z "line": 34 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5019144Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5019358Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5019617Z "path": "crates/spt-proto/src/version.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5019907Z "line": 41 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5020127Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5020326Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5020522Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5020708Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5020932Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5021176Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5021401Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5021603Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5021814Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5022290Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5022515Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5022762Z "path": "crates/spt-proto/src/version.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5023054Z "line": 51 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5023267Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5023472Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5023824Z "path": "crates/spt-proto/src/version.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5024113Z "line": 71 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5024337Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5024546Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5024785Z "path": "crates/spt-proto/src/version.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5025076Z "line": 83 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5025296Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5025500Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5025691Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5025883Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5026077Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5026273Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5026484Z "id": "REQ-ARCH-4", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5026820Z "title": "Copy-verbatim the commodity layer from the sister project", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5027185Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5027413Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5027638Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5027843Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5028052Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5028272Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5028497Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5028745Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5029103Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5029310Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5029528Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5029776Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5029985Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5030224Z "path": "crates/spt-proto/src/event.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5030510Z "line": 165 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5030735Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5030929Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5031173Z "path": "crates/spt-proto/src/event.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5031468Z "line": 188 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5031694Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5031893Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5032139Z "path": "crates/spt-proto/src/event.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5032426Z "line": 208 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5032656Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5032864Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5033103Z "path": "crates/spt-proto/src/event.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5033389Z "line": 223 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5033614Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5033823Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5034066Z "path": "crates/spt-proto/src/event.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5034351Z "line": 273 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5034575Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5034773Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5034974Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5035174Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5035397Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5035655Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5035875Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5036084Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5036313Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5036575Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5036796Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5037044Z "path": "crates/spt-proto/src/event.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5037337Z "line": 334 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5037569Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5037769Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5038012Z "path": "crates/spt-proto/src/event.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5038297Z "line": 344 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5038522Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5038724Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5039057Z "path": "crates/spt-proto/src/event.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5039339Z "line": 355 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5039562Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5039762Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5040000Z "path": "crates/spt-proto/src/event.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5040278Z "line": 366 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5040608Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5040803Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5041056Z "path": "crates/spt-proto/src/event.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5041342Z "line": 378 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5041557Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5041766Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5042128Z "path": "crates/spt-proto/src/event.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5042405Z "line": 391 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5042629Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5042833Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5043061Z "path": "crates/spt-proto/src/event.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5043339Z "line": 402 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5043563Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5043763Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5044006Z "path": "crates/spt-proto/src/event.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5044283Z "line": 419 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5044508Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5044712Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5044954Z "path": "crates/spt-proto/src/event.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5045252Z "line": 547 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5045477Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5045681Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5045877Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5046073Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5046272Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5046454Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5103625Z "id": "REQ-CLI-1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5105179Z "title": "spt endpoint noun namespace: absorbs fork/suspend/wake/shutdown/rename/stop/digest + access (ported 1:1: allow|revoke|open|list, decision 21) + description (ex-resources blurb; bare=show, set=author); merged endpoint list [--local|--subnet ] grouped by subnet with SELF pinned, --detail adding the ex-resources yellow-pages blurb projection; bare spt endpoint = the list (M8 decisions 1-2, 25)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5106446Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5106686Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5106906Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5107109Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5107357Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5107577Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5107797Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5108054Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5108277Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5108482Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5108712Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5109037Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5109371Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5109623Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5109905Z "line": 225 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5110129Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5110335Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5110563Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5110839Z "line": 1093 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5111065Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5111267Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5111504Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5111757Z "line": 1720 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5111991Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5112186Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5112420Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5112691Z "line": 3124 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5112901Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5113101Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5113312Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5113512Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5113730Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5113972Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5114195Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5114395Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5114610Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5114834Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5115058Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5115282Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5115545Z "line": 7947 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5115778Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5115978Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5116175Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5116364Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5116850Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5117045Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5117246Z "id": "REQ-CLI-2", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5118161Z "title": "spt daemon noun: run|stop|status (hidden daemon verb becomes daemon run; agent-endpoint shutdown keeps its name under endpoint); daemon status renders the pump heartbeat (last-tick recency) so a half-dead daemon is never rendered implied-healthy (M8 decisions 5, 23)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5119292Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5119525Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5119727Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5119921Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5120118Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5120328Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5120555Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5120803Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5121019Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5121225Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5121443Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5121672Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5121899Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5122140Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5122426Z "line": 414 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5122651Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5122847Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5123098Z "path": "crates/spt-daemon/src/endpoint.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5123399Z "line": 97 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5123618Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5123820Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5124077Z "path": "crates/spt-daemon/src/seedmap.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5124370Z "line": 256 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5124597Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5124798Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5125031Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5125303Z "line": 434 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5125523Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5125714Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5125942Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5126219Z "line": 1174 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5126448Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5126649Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5126877Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5127148Z "line": 1958 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5127367Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5127566Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5127787Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5128059Z "line": 2047 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5128283Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5128487Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5128707Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5129059Z "line": 2108 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5129294Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5129497Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5129696Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5129891Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5130119Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5130368Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5130592Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5130796Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5131011Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5131255Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5131475Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5131726Z "path": "crates/spt-daemon/src/seedmap.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5132022Z "line": 338 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5132246Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5132455Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5132686Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5132953Z "line": 8102 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5133177Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5133368Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5133564Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5133760Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5133954Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5134136Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5134351Z "id": "REQ-CLI-3", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5135266Z "title": "Agent hot path stays flat across the M8 reorg: send/ring/ready/whoami/how-to unchanged; notify moves to subnet notify while notif stays top-level; breaking renames land clean with no deprecation shims (zero external CLI consumers pre-spt-claude-code) (M8 decisions 3-4, 9)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5136289Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5136521Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5136731Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5137022Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5137228Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5137446Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5137661Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5137894Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5138112Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5138318Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5138529Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5138761Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5139090Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5139339Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5139610Z "line": 1087 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5139831Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5140024Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5140214Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5140412Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5140623Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5140866Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5141086Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5141285Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5141496Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5141730Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5141947Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5142181Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5142449Z "line": 7912 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5142674Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5142877Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5143067Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5143270Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5143462Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5143647Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5143851Z "id": "REQ-CLI-4", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5146343Z "title": "User-facing CLI output is human-readable: DIRECT-USER commands (e.g. adapter update/list/use) render friendly prose instead of raw CODE:RESULT markers — \"claude-spt is up to date (0.2.0).\" not \"ADAPTER_UPDATE_UPTODATE:claude-spt: installed 0.2.0, latest 0.2.0\". Strictly bounded to the direct-user surface: the adapter-PARSED bringup tokens (SEEDED/BOUND/READY/NO_SEED on seed/listen, which adapters grep) stay machine-parseable — humanization is additive (a human line beside the marker, or a --porcelain/--quiet split), never a silent rename of a dual-contract marker. The user-facing bringup composition belongs to the adapter (perri); this REQ owns only the direct-user CLI surface. (v0.9.0)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5148348Z "requiredStages": [], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5148587Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5148793Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5149122Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5149365Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5149593Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5149789Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5150014Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5150251Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5150589Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5150934Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5151273Z "line": 5678 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5151736Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5152027Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5152356Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5152666Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5152957Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5153338Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5153637Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5153951Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5154317Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5154627Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5154999Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5155271Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5155572Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5155877Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5156180Z "id": "REQ-CLI-HELP-MARKDOWN", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5159710Z "title": "`spt --help` (and every subcommand --help) renders the inline Markdown authored in the clap doc-comments as terminal styling, never as literal markers: `**bold**` → ANSI bold, `` `code` `` → ANSI cyan, `[text](url)` → `text`. The markers are STRIPPED either way — a raw `**` or backtick must NEVER reach the user (the operator-reported v0.12.0 defect: help text reads `**ctrl-b**` and stray backticks verbatim). Color/bold escapes are emitted ONLY when the help is going to a real terminal AND color is not suppressed (NO_COLOR unset · CLICOLOR != 0 · CLICOLOR_FORCE forces on); a pipe / redirect / CI / NO_COLOR falls back to strip-only (clean plaintext, zero escapes) so machine-readable help is byte-identical regardless of marker syntax. Pure transform over the clap-rendered help string at the single run()/bare_invocation chokepoint; preserves pre-existing ANSI (CSI sequences passed through untouched), never spans markers across a newline, leaves unmatched/empty markers literal, and does not alter the help layout. (v0.12.1)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5163155Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5163484Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5163794Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5164111Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5164404Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5164681Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5165068Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5165392Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5165731Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5166042Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5166332Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5166706Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5167024Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5167378Z "path": "crates/spt/src/helpfmt.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5167807Z "line": 8 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5168096Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5168455Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5168779Z "path": "crates/spt/src/helpfmt.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5169281Z "line": 51 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5169622Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5169908Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5170304Z "path": "crates/spt/src/helpfmt.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5170666Z "line": 82 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5170995Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5171304Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5171624Z "path": "crates/spt/src/helpfmt.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5172040Z "line": 229 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5172350Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5172617Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5173008Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5173289Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5173638Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5173962Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5174263Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5174585Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5174893Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5175245Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5175589Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5175909Z "path": "crates/spt/src/helpfmt.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5176320Z "line": 249 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5176635Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5176936Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5177272Z "path": "crates/spt/src/helpfmt.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5177647Z "line": 256 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5178014Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5178304Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5178643Z "path": "crates/spt/src/helpfmt.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5179120Z "line": 263 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5179430Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5179745Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5180067Z "path": "crates/spt/src/helpfmt.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5180415Z "line": 270 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5180822Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5181103Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5181447Z "path": "crates/spt/src/helpfmt.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5181822Z "line": 297 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5182114Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5182450Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5182759Z "path": "crates/spt/src/helpfmt.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5183196Z "line": 307 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5183626Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5183907Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5184290Z "path": "crates/spt/src/helpfmt.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5184657Z "line": 317 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5184990Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5185289Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5185725Z "path": "crates/spt/src/helpfmt.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5186159Z "line": 331 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5186474Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5186784Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5187103Z "path": "crates/spt/src/helpfmt.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5187486Z "line": 340 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5187823Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5188111Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5188416Z "path": "crates/spt/src/helpfmt.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5188860Z "line": 348 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5189260Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5189594Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5189884Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5190152Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5190485Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5190752Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5191072Z "id": "REQ-CLI-OUTPUT-MARKDOWN", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5199997Z "title": "Human-prose COMMAND OUTPUT (not just `--help`) renders the inline Markdown authored in its source strings as terminal styling, never literal markers: `` `code` `` → ANSI cyan, `**bold**` → ANSI bold, `[text](url)` → `text`, markers STRIPPED either way. REQ-CLI-HELP-MARKDOWN only hooked the clap `--help` chokepoint, so command output still printed raw Markdown (audit: `spt how-to` topic text showed `# headers`/backticks, `spt subnet`/`subnet status` hint footers showed stray backticks, the daemon-status `not running` line, the `ENDPOINT_RUN_STARTED` attach hint, and the daemon's `SUBNET_DETACHED` startup line — 13 prose surfaces). The same line-bounded pure `helpfmt::render` is applied at each emit site, color-gated by the OUTPUT STREAM's own tty (`stdout_color` for print/println, the new `stderr_color` for eprintln). HARNESS-SAFETY (binding): color is tty-gated, so an adapter (piped / non-tty / NO_COLOR) gets STRIP mode = zero ANSI + markers removed; every dual-contract MACHINE token on a rendered line (`ENDPOINT_RUN_STARTED:`, `NO_SUCH_TOPIC:`, `SUBNET_DETACHED:`) carries NO Markdown markers, so it survives strip byte-intact — the adapter parse is never perturbed. Pure-machine output (the `` envelope, bringup parse-tokens SEEDED/BOUND/READY/NO_SEED, `--json`, QR) is NEVER routed through the renderer. The one spt-daemon source string (`SUBNET_DETACHED`, the bin-local renderer is unreachable from the daemon crate) is authored marker-free instead. (v0.12.2)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5204427Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5204757Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5205081Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5205424Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5205691Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5206049Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5206361Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5206732Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5207070Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5207352Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5207709Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5208066Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5208409Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5208752Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5209245Z "line": 141 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5209608Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5209895Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5210219Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5210647Z "line": 1376 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5210981Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5211305Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5211615Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5211972Z "line": 2145 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5212329Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5212620Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5212949Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5213536Z "line": 4368 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5213827Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5214172Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5214501Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5214877Z "line": 4466 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5215210Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5215606Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5215970Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5216366Z "line": 5257 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5216685Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5216998Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5217320Z "path": "crates/spt/src/helpfmt.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5217744Z "line": 39 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5218040Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5218298Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5218664Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5219022Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5219416Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5219743Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5220048Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5220377Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5220687Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5221050Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5221399Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5221704Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5222105Z "line": 10272 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5222428Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5222738Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5223057Z "path": "crates/spt/src/helpfmt.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5223434Z "line": 281 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5223777Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5224096Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5232777Z "path": "crates/spt/src/helpfmt.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5233159Z "line": 358 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5233402Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5233617Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5233860Z "path": "crates/spt/src/helpfmt.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5234150Z "line": 381 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5234384Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5234594Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5234828Z "path": "crates/spt/src/helpfmt.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5235117Z "line": 395 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5235340Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5235545Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5235744Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5235936Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5236127Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5236321Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5236537Z "id": "REQ-CONSENT-1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5237652Z "title": "Consent grant store: capability x subject-agent x target-node rows, enforced at the target node, subnet-settable (replicates as security material near the trust store), revocable; gated-capability ids (remote-exec, instantiate-anywhere) reserved-but-refusing; v1 consumers are the shell spawn gates (CONTEXT Consent & security gates)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5238775Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5239070Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5239284Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5239485Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5239690Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5239894Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5240118Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5240368Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5240594Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5240802Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5241022Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5241260Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5241483Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5241737Z "path": "crates/spt-daemon/src/grants.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5242022Z "line": 27 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5242248Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5242447Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5242690Z "path": "crates/spt-daemon/src/grants.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5242976Z "line": 75 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5243187Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5243381Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5243633Z "path": "crates/spt-daemon/src/grants.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5244066Z "line": 98 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5244286Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5244488Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5244730Z "path": "crates/spt-store/src/grants.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5245021Z "line": 82 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5245235Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5245535Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5245769Z "path": "crates/spt-store/src/grants.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5246047Z "line": 109 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5246271Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5246467Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5246707Z "path": "crates/spt-store/src/grants.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5246987Z "line": 127 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5247206Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5247402Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5247626Z "path": "crates/spt-store/src/grants.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5247912Z "line": 142 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5248121Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5248314Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5248540Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5248819Z "line": 7048 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5249110Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5249316Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5249505Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5249697Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5249921Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5250159Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5250373Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5250570Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5250799Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5251035Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5251245Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5251486Z "path": "crates/spt-daemon/src/grants.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5251772Z "line": 334 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5251996Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5252192Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5252436Z "path": "crates/spt-daemon/src/grants.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5252712Z "line": 380 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5252931Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5253122Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5253365Z "path": "crates/spt-daemon/src/grants.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5253641Z "line": 391 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5253865Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5254065Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5254303Z "path": "crates/spt-store/src/grants.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5254584Z "line": 165 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5254799Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5255000Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5255252Z "path": "crates/spt-store/src/grants.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5255533Z "line": 184 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5255752Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5255949Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5256181Z "path": "crates/spt-store/src/grants.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5256460Z "line": 204 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5256689Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5256908Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5257165Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5257441Z "line": 8334 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5257652Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5257842Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5258029Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5258220Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5258410Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5258606Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5258812Z "id": "REQ-CONSENT-2", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5259919Z "title": "Interactive consent escalation: an ungated high-risk action routes a consent prompt to the user's most-recently-active session; allow-once / allow-always (writes a grant) / deny; pre-consent flags (can_shutdown, shell_wake_spawn_anywhere) author grants via manifest/settings (CONTEXT Consent & security gates)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5260919Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5261139Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5261349Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5261534Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5261739Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5262046Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5262274Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5262509Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5262733Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5262937Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5263157Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5263396Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5263730Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5263974Z "path": "crates/spt-daemon/src/grants.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5264265Z "line": 140 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5264481Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5264682Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5264916Z "path": "crates/spt-daemon/src/grants.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5265192Z "line": 165 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5265412Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5265613Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5265855Z "path": "crates/spt-daemon/src/grants.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5266131Z "line": 199 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5266350Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5266557Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5266802Z "path": "crates/spt-daemon/src/grants.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5267091Z "line": 241 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5267302Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5267501Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5267744Z "path": "crates/spt-daemon/src/grants.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5268035Z "line": 269 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5268255Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5268461Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5268703Z "path": "crates/spt-daemon/src/grants.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5269532Z "line": 300 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5269770Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5269977Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5270201Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5270474Z "line": 6839 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5270699Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5270921Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5271136Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5271408Z "line": 6897 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5271628Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5271827Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5272019Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5272217Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5272439Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5272683Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5272911Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5273111Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5273327Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5273551Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5273769Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5274018Z "path": "crates/spt-daemon/src/grants.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5274304Z "line": 419 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5274524Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5274733Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5274971Z "path": "crates/spt-daemon/src/grants.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5275262Z "line": 436 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5275481Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5275681Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5275924Z "path": "crates/spt-daemon/src/grants.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5276211Z "line": 472 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5276430Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5276630Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5276873Z "path": "crates/spt-daemon/src/grants.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5277164Z "line": 516 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5277382Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5277580Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5277800Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5278076Z "line": 9614 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5278181Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5278285Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5278420Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5278529Z "line": 9696 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5278633Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5278735Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5278835Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5279030Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5279129Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5279340Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5279453Z "id": "REQ-CONSENT-3", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5281438Z "title": "Per-capability approval gates (class-keyed): the require_approval enum may ride INDIVIDUAL [shell.capabilities] entries — gating the dangerous ACT, not just the spawn — with an optional class_key scoping the grant qualifier finer than the capability id ((owner endpoint x device class x node); a remembered HID-class attach grant never authorizes a storage-class attach). Reuses the grant store + interactive escalation + tighten-only floor (REQ-CONSENT-1/2 plumbing). Spawn gates govern EXISTENCE; capability gates govern ACTS — an explicitly distinct invariant (CONTEXT:283, ratified 2026-06-11 Gateway grill).", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5281663Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5281768Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5281878Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5281982Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5282092Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5282198Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5282302Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5282402Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5282517Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5282631Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5282730Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5282849Z "path": "CONTEXT.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5282953Z "line": 304 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5283061Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5283166Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5283267Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5283376Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5283481Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5283596Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5283700Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5283853Z "path": "crates/spt-daemon/src/linkhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5283958Z "line": 123 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5284053Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5284159Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5284311Z "path": "crates/spt-daemon/src/linkhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5284425Z "line": 162 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5284540Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5284630Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5284779Z "path": "crates/spt-daemon/src/linkhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5284888Z "line": 291 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5284993Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5285094Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5285250Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5285361Z "line": 574 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5285461Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5285593Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5285741Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5285846Z "line": 824 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5285954Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5286060Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5286198Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5286307Z "line": 6965 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5286408Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5286504Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5286617Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5286718Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5286837Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5286956Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5287062Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5287214Z "path": "crates/spt/tests/shell_actgate_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5287325Z "line": 16 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5287429Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5287528Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5287629Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5287739Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5287847Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5287956Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5288061Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5288211Z "path": "crates/spt-daemon/src/linkhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5288321Z "line": 1019 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5288431Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5288531Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5288666Z "path": "crates/spt-daemon/src/linkhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5288860Z "line": 1066 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5289027Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5289122Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5289266Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5289404Z "line": 1394 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5289504Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5289694Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5289799Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5289910Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5290014Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5290109Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5290215Z "id": "REQ-CONV-1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5291703Z "title": "Peer address seeding, both cold starts: durable peer-addrs.json (identity dir) maps peer pubkey → last-known dialable address; the pump's resolver consults it FIRST with id-only discovery fallback on miss or dial failure (a stale addr never strands a peer); written by the pairing ceremony (both sides, from the live connection) and by the pump on successful connect; post-join first sync and post-restart resync converge in seconds, not ~1 min (M8 decisions 14, 20)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5291809Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5291918Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5292032Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5292128Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5292232Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5292332Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5292458Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5292566Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5292671Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5292777Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5292890Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5293010Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5293111Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5293266Z "path": "crates/spt-daemon/src/nethost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5293371Z "line": 988 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5293481Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5293588Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5293731Z "path": "crates/spt-daemon/src/pairhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5293846Z "line": 94 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5293950Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5294056Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5294199Z "path": "crates/spt-daemon/src/pairhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5294308Z "line": 345 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5294414Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5294513Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5294662Z "path": "crates/spt-daemon/src/pairhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5294766Z "line": 387 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5294875Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5294981Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5295138Z "path": "crates/spt-daemon/src/pairhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5295252Z "line": 472 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5295354Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5295462Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5295601Z "path": "crates/spt-daemon/src/pump/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5295711Z "line": 667 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5295820Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5295926Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5296082Z "path": "crates/spt-daemon/src/pump/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5296190Z "line": 693 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5296301Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5296401Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5296558Z "path": "crates/spt-net/src/net/endpoint.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5296668Z "line": 369 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5296782Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5296892Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5297040Z "path": "crates/spt-store/src/peeraddrs.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5297144Z "line": 19 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5297245Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5297340Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5297440Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5297540Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5297655Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5297764Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5297870Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5297970Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5298084Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5298280Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5298383Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5298531Z "path": "crates/spt-daemon/src/pump/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5298639Z "line": 1263 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5298738Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5298901Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5299120Z "path": "crates/spt-store/src/peeraddrs.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5299221Z "line": 108 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5299335Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5299439Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5299583Z "path": "crates/spt-store/src/peeraddrs.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5299701Z "line": 134 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5299803Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5299912Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5300054Z "path": "crates/spt-store/src/peeraddrs.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5300160Z "line": 144 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5300259Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5300345Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5300456Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5300560Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5300664Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5300766Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5300879Z "id": "REQ-CONV-2", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5302059Z "title": "Event-driven advertisement: endpoint online/offline transitions (ready-listener start/stop, rest-state transition, perch death) trigger an immediate advertise_local + peer push as a WAKE of the existing pump loop (no second advertisement path — epoch lease + visibility gates ride unchanged); the cadence stays the steady-state floor (M8 decision 15)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5302183Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5302287Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5302388Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5302498Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5302597Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5302703Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5302821Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5302936Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5303037Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5303140Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5303255Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5303371Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5303464Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5303619Z "path": "crates/spt-daemon/src/lifecycle.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5303733Z "line": 409 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5303836Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5303931Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5304106Z "path": "crates/spt-daemon/src/pump/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5304224Z "line": 119 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5304330Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5304435Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5304587Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5304697Z "line": 841 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5304806Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5304912Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5305074Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5305183Z "line": 852 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5305294Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5305393Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5305546Z "path": "crates/spt-daemon/src/resting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5305660Z "line": 334 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5305764Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5305875Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5306008Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5306123Z "line": 3074 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5306224Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5306322Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5306452Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5306558Z "line": 3090 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5306665Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5306764Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5306899Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5306994Z "line": 3170 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5307103Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5307204Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5307408Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5307515Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5307633Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5307757Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5307853Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5307957Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5308071Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5308291Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5308401Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5308549Z "path": "crates/spt-daemon/src/pump/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5308663Z "line": 889 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5308764Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5308872Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5309481Z "path": "crates/spt-daemon/src/pump/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5309594Z "line": 1014 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5309703Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5309795Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5309965Z "path": "crates/spt-daemon/src/pump/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5310067Z "line": 215 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5310167Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5310275Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5310377Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5310491Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5310586Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5310687Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5310791Z "id": "REQ-DAEMON-1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5310997Z "title": "One per-machine spt-daemon owning all per-machine state", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5311120Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5311225Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5311326Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5311430Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5311540Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5311646Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5311750Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5311867Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5311973Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5312081Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5312184Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5312299Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5312405Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5312508Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5312677Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5312781Z "line": 229 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5312881Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5312987Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5313133Z "path": "crates/spt-daemon/src/config.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5313234Z "line": 12 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5313344Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5313448Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5313587Z "path": "crates/spt-daemon/src/lifecycle.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5313691Z "line": 16 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5313796Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5313897Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5314048Z "path": "crates/spt-daemon/src/lifecycle.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5314164Z "line": 309 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5314274Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5314368Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5314520Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5314634Z "line": 24 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5314741Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5314847Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5315000Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5315104Z "line": 262 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5315215Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5315319Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5315467Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5315581Z "line": 279 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5315676Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5315782Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5315929Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5316039Z "line": 356 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5316145Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5316248Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5316401Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5316521Z "line": 670 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5316621Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5316846Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5316992Z "path": "crates/spt-daemon/src/relay.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5317108Z "line": 15 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5317211Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5317498Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5317707Z "path": "crates/spt-store/src/info.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5324990Z "line": 241 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5325142Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5325250Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5325398Z "path": "crates/spt/src/api/live.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5325508Z "line": 13 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5325611Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5325712Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5325856Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5325969Z "line": 382 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5326075Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5326175Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5326332Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5326461Z "line": 494 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5326561Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5326666Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5326762Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5326871Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5326981Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5327095Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5327200Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5327410Z "path": "crates/spt-daemon/tests/daemon_lifecycle_real_brain.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5327515Z "line": 2 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5327616Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5327716Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5327904Z "path": "crates/spt-daemon/tests/daemon_lifecycle_real_brain.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5328010Z "line": 16 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5328115Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5328219Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5328391Z "path": "crates/spt/tests/live_bind_firsthost_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5328490Z "line": 12 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5328601Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5328701Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5328863Z "path": "crates/spt/tests/live_firsthost_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5329049Z "line": 12 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5329153Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5329255Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5329421Z "path": "crates/spt/tests/livehost_bootrace_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5329531Z "line": 44 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5329622Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5329716Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5329821Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5329928Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5330045Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5330139Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5330245Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5330385Z "path": "crates/spt-daemon/src/config.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5330495Z "line": 285 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5330596Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5330700Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5330853Z "path": "crates/spt-daemon/src/config.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5330958Z "line": 293 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5331053Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5331153Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5331301Z "path": "crates/spt-daemon/src/config.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5331415Z "line": 309 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5331517Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5331616Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5331758Z "path": "crates/spt-daemon/src/config.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5331859Z "line": 317 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5331964Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5332063Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5332216Z "path": "crates/spt-daemon/src/lifecycle.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5332317Z "line": 659 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5332418Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5332517Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5332670Z "path": "crates/spt-daemon/src/lifecycle.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5332931Z "line": 729 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5333030Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5333131Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5333281Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5333391Z "line": 1211 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5333492Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5333681Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5333840Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5333944Z "line": 1248 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5334040Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5334140Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5334287Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5334393Z "line": 1271 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5334492Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5334597Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5334741Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5334849Z "line": 1300 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5334955Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5335060Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5335198Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5335309Z "line": 1348 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5335409Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5335502Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5335655Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5335763Z "line": 1391 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5335866Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5335972Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5336115Z "path": "crates/spt-daemon/src/relay.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5336229Z "line": 106 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5336325Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5336426Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5336568Z "path": "crates/spt-daemon/src/relay.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5336673Z "line": 132 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5336769Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5336873Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5337002Z "path": "crates/spt-store/src/info.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5337116Z "line": 530 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5337221Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5337308Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5337412Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5337512Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5337613Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5337712Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5337832Z "id": "REQ-DAEMON-2", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5338008Z "title": "Broker/brain split for seamless self-update", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5338112Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5338224Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5338327Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5338436Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5338536Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5338638Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5338736Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5338846Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5339018Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5339113Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5339275Z "path": "docs/TWO-HOST-RUNBOOK.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5339384Z "line": 250 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5339486Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5339595Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5339689Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5339796Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5339900Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5340014Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5340120Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5340266Z "path": "crates/spt-daemon/src/brain.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5340377Z "line": 23 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5340478Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5340576Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5340713Z "path": "crates/spt-daemon/src/brain.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5340819Z "line": 844 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5340922Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5341021Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5341156Z "path": "crates/spt-daemon/src/brain.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5341260Z "line": 869 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5341365Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5341461Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5341699Z "path": "crates/spt-daemon/src/brain.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5341813Z "line": 1105 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5341913Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5342019Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5342162Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5342362Z "line": 32 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5342462Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5342552Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5342701Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5342810Z "line": 1150 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5342915Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5343016Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5343157Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5343273Z "line": 1947 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5343369Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5343477Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5343615Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5343724Z "line": 2234 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5343817Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5343922Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5344066Z "path": "crates/spt-daemon/src/codec.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5344170Z "line": 11 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5344270Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5344380Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5344523Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5344624Z "line": 153 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5344719Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5344823Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5344953Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5345062Z "line": 343 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5345162Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5345268Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5345405Z "path": "crates/spt-daemon/src/msg.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5345515Z "line": 13 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5345616Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5345720Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5345859Z "path": "crates/spt-daemon/src/nethost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5345964Z "line": 27 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5346072Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5346167Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5346309Z "path": "crates/spt-daemon/src/nethost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5346422Z "line": 173 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5346518Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5346614Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5346741Z "path": "crates/spt-daemon/src/nethost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5346847Z "line": 682 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5346947Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5347052Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5347195Z "path": "crates/spt-daemon/src/nethost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5347300Z "line": 903 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5347404Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5347510Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5347658Z "path": "crates/spt-daemon/src/nethost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5347767Z "line": 1050 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5347868Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5347972Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5348111Z "path": "crates/spt-daemon/src/nethost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5348211Z "line": 1139 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5348311Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5348406Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5348540Z "path": "crates/spt-daemon/src/nethost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5348649Z "line": 1261 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5348755Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5348855Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5349287Z "path": "crates/spt-daemon/src/transport.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5349397Z "line": 10 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5349497Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5349597Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5349697Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5349803Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5349912Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5350012Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5350236Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5350384Z "path": "crates/spt-daemon/tests/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5350484Z "line": 17 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5350588Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5350681Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5350822Z "path": "crates/spt-daemon/tests/netbroker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5351019Z "line": 90 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5351118Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5351222Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5351379Z "path": "crates/spt-daemon/tests/netbroker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5351487Z "line": 110 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5351591Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5351687Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5351834Z "path": "crates/spt-daemon/tests/netbroker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5351944Z "line": 186 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5352050Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5352149Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5352283Z "path": "crates/spt-daemon/tests/netbroker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5352388Z "line": 309 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5352487Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5352594Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5352741Z "path": "crates/spt-daemon/tests/netstream.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5352850Z "line": 128 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5352956Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5353060Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5353208Z "path": "crates/spt/tests/brain_survive.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5353309Z "line": 59 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5353413Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5353513Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5353619Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5353717Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5353823Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5353934Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5354037Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5354185Z "path": "crates/spt-daemon/src/codec.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5354284Z "line": 62 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5354387Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5354492Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5354631Z "path": "crates/spt-daemon/src/codec.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5354735Z "line": 76 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5354835Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5354936Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5355069Z "path": "crates/spt-daemon/src/codec.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5355165Z "line": 88 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5355269Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5355374Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5355504Z "path": "crates/spt-daemon/src/effect.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5355612Z "line": 347 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5355713Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5355819Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5355951Z "path": "crates/spt-daemon/src/msg.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5356060Z "line": 873 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5356162Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5356260Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5356395Z "path": "crates/spt-daemon/src/msg.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5356514Z "line": 881 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5356618Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5356717Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5356850Z "path": "crates/spt-daemon/src/msg.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5356959Z "line": 898 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5357068Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5357160Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5357297Z "path": "crates/spt-daemon/src/msg.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5357402Z "line": 974 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5357507Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5357607Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5357746Z "path": "crates/spt-daemon/src/nethost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5357851Z "line": 1370 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5357945Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5358047Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5358193Z "path": "crates/spt-daemon/src/nethost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5358293Z "line": 1382 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5358466Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5358565Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5358710Z "path": "crates/spt-daemon/src/transport.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5358813Z "line": 110 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5358923Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5359109Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5359349Z "path": "crates/spt-daemon/tests/resume.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5359452Z "line": 145 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5359556Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5359657Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5359748Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5359856Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5359957Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5360058Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5360176Z "id": "REQ-DAEMON-3", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5360358Z "title": "Any api invocation auto-starts the daemon if absent", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5360486Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5360586Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5360696Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5360791Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5360896Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5361002Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5361106Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5361226Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5361336Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5361440Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5361550Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5361660Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5361772Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5361868Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5362019Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5362123Z "line": 14 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5362237Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5362339Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5362480Z "path": "crates/spt-daemon/src/endpoint.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5362591Z "line": 11 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5362686Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5362790Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5362920Z "path": "crates/spt/src/api/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5363034Z "line": 305 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5363139Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5363239Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5363372Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5363473Z "line": 1956 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5363582Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5363687Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5363821Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5363935Z "line": 4235 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5364035Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5364136Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5364259Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5364369Z "line": 4256 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5364470Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5364574Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5364673Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5364778Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5364900Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5365009Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5365114Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5365262Z "path": "crates/spt/tests/contract_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5365366Z "line": 49 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5365463Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5365567Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5365715Z "path": "crates/spt/tests/contract_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5365825Z "line": 487 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5365929Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5366035Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5366139Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5366253Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5366364Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5366482Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5366582Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5366722Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5366835Z "line": 1553 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5366945Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5367052Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5367173Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5367387Z "line": 10715 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5367485Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5367580Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5367681Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5367767Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5367871Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5367977Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5368101Z "id": "REQ-DAEMON-4", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5368396Z "title": "Honor every KNOWN-HAZARDS invariant", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5368515Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5368616Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5368725Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5368830Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5368921Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5369116Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5369222Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5369340Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5369450Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5369556Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5369660Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5369779Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5369885Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5369984Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5370130Z "path": "crates/spt-daemon/src/lifecycle.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5370236Z "line": 464 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5370332Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5370431Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5370565Z "path": "crates/spt-daemon/src/lifecycle.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5370684Z "line": 529 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5370783Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5370889Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5371032Z "path": "crates/spt-daemon/src/lifecycle.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5371142Z "line": 551 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5371256Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5371356Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5371461Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5371567Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5371690Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5371796Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5371900Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5372067Z "path": "crates/spt-daemon/tests/daemon_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5372177Z "line": 42 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5372286Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5372390Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5372494Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5372598Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5372711Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5372822Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5372927Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5373069Z "path": "crates/spt-daemon/src/config.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5373175Z "line": 428 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5373279Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5373379Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5373518Z "path": "crates/spt-daemon/src/lifecycle.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5373622Z "line": 957 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5373724Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5373819Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5373960Z "path": "crates/spt-daemon/src/lifecycle.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5374076Z "line": 1027 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5374185Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5374285Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5374434Z "path": "crates/spt-daemon/src/lifecycle.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5374533Z "line": 1057 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5374634Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5374734Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5374886Z "path": "crates/spt-daemon/src/lifecycle.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5374997Z "line": 1090 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5375101Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5375190Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5375290Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5375395Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5375498Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5375597Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5375718Z "id": "REQ-DAEMON-5", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5377138Z "title": "Pump liveness: the peer pump writes a last-tick heartbeat consumed by daemon status / subnet status (decision 23 render legs in REQ-CLI-2/REQ-SUBNET-8); the daemon supervises the pump task — a panic is caught, logged loudly, and the pump restarts with capped backoff (≤5 min), so a 5.9-class death self-heals visibly instead of silently halving the daemon (M8 decision 23; field motivation: hfenduleam 2026-06-07 half-death)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5377367Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5377462Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5377658Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5377762Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5377867Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5377971Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5378079Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5378198Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5378299Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5378417Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5378527Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5378632Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5378736Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5378886Z "path": "crates/spt-daemon/src/pump/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5379065Z "line": 476 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5379162Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5379275Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5379423Z "path": "crates/spt-daemon/src/pump/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5379530Z "line": 769 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5379634Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5379738Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5379886Z "path": "crates/spt-daemon/src/pump/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5379991Z "line": 782 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5380102Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5380211Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5380344Z "path": "crates/spt-daemon/src/pump/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5380450Z "line": 800 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5380544Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5380648Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5380782Z "path": "crates/spt-daemon/src/pump/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5380887Z "line": 841 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5380996Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5381101Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5381202Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5381306Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5381431Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5381540Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5381653Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5381765Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5381878Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5381992Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5382089Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5382236Z "path": "crates/spt-daemon/src/pump/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5382346Z "line": 1189 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5382451Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5382555Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5382695Z "path": "crates/spt-daemon/src/pump/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5382807Z "line": 1213 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5382912Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5383017Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5383167Z "path": "crates/spt-daemon/src/pump/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5383276Z "line": 1239 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5383372Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5383477Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5383576Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5383677Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5383782Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5383891Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5384002Z "id": "REQ-DAEMON-6", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5386110Z "title": "Service-aware `daemon start`/`stop`: when an OS service manager has a registered spt-daemon for this user, `spt daemon start` and `spt daemon stop` drive THAT service (so stop doesn't IPC-kill a unit that auto-restart-fights for the broker socket — the kitsubito 2026-06-08 loop). `start` graduates from a `run` alias to a first-class background verb (ensure-up, idempotent, non-blocking); stop routes managed→manager, manual→IPC. Linux=systemd user unit (`systemctl --user start|stop|is-active spt-daemon`, detected by unit-file presence); Windows=no controllable manager (the logon task is boot-only), so start=detached spawn / stop=IPC.", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5386239Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5386340Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5386574Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5386674Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5386787Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5386888Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5386998Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5387112Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5387217Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5387417Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5387523Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5387640Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5387741Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5387890Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5387999Z "line": 495 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5388110Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5388219Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5388365Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5388469Z "line": 526 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5388569Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5388667Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5388811Z "path": "crates/spt-daemon/src/service.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5388921Z "line": 55 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5389087Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5389187Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5389340Z "path": "crates/spt-daemon/src/service.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5389451Z "line": 70 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5389555Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5389654Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5389784Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5389903Z "line": 2020 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5389993Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5390095Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5390227Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5390337Z "line": 2046 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5390442Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5390542Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5390647Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5390753Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5390875Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5390982Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5391091Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5391199Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5391313Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5391429Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5391527Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5391676Z "path": "crates/spt-daemon/src/service.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5391790Z "line": 288 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5391894Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5392001Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5392138Z "path": "crates/spt-daemon/src/service.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5392248Z "line": 299 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5392348Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5392448Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5392577Z "path": "crates/spt-daemon/src/service.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5392687Z "line": 325 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5392791Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5392892Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5393039Z "path": "crates/spt-daemon/src/service.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5393144Z "line": 351 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5393245Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5393335Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5393434Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5393543Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5393643Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5393742Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5393856Z "id": "REQ-DAEMON-7", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5395348Z "title": "`daemon run` is foreground-consistent on every platform: the invoking process IS the daemon, blocks until signalled, never auto-detaches or respawns into an invisible background task. The detached/de-elevated background behavior lives ONLY in `start`. Windows: an ELEVATED `daemon run` refuses with guidance (use `start`, or an unelevated shell) instead of respawning detached/de-elevated and vanishing (KH 5.7 preserved — it still never serves elevated).", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5395468Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5395573Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5395687Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5395892Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5396007Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5396107Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5396231Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5396344Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5396449Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5396557Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5396766Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5396886Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5396989Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5397139Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5397252Z "line": 545 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5397357Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5397463Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5397610Z "path": "crates/spt-daemon/src/deelevate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5397725Z "line": 610 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5397825Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5397934Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5398078Z "path": "crates/spt-daemon/src/service.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5398191Z "line": 89 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5398296Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5398397Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5398520Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5398621Z "line": 1957 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5398722Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5398830Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5398925Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5399124Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5399232Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5399338Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5399444Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5399532Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5399657Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5399767Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5399871Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5400015Z "path": "crates/spt-daemon/src/service.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5400125Z "line": 314 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5400219Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5400316Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5400454Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5400558Z "line": 8102 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5400659Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5400759Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5400868Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5400969Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5401072Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5401178Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5401284Z "id": "REQ-DAEMON-8", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5402298Z "title": "Internal auto-start prefers the service: `ensure_running` (any spt command's implicit daemon start, REQ-DAEMON-3) routes through the service-aware start path — when a manager has a registered service it starts THAT, never a competing manual `spawn_detached` daemon that would fight the service for the socket.", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5402407Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5402513Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5402617Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5402721Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5402832Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5402932Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5403050Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5403156Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5403270Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5403375Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5403481Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5403599Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5403704Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5403853Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5403961Z "line": 445 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5404065Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5404175Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5404316Z "path": "crates/spt-daemon/src/service.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5404426Z "line": 56 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5404517Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5404626Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5404716Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5404827Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5404945Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5405050Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5405259Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5405365Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5405484Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5405589Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5405689Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5408676Z "path": "crates/spt-daemon/src/service.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5409047Z "line": 288 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5409157Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5409254Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5409423Z "path": "crates/spt-daemon/src/service.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5409527Z "line": 325 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5409628Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5409731Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5409830Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5409936Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5410036Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5410135Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5410251Z "id": "REQ-DAEMON-9", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5412738Z "title": "Net-bind boot-race resilience: a daemon that comes up net-less (NetHost::start failed — e.g. the systemd unit autostarted before the network/DNS stack was ready, `Failed to create an address lookup service`) must SELF-HEAL — retry the net bring-up in the background with capped backoff and, on success, attach net to the broker + spawn the dispatcher/peer-pump (which today are gated on `net_up` at boot and so never start, leaving the node silently unreachable until a manual restart — kitsubito 2026-06-08). Status surfaces the net-less state honestly (a net-less broker renders as 'no connection', not only a pump-STALLED line with a bogus pre-boot heartbeat age). The installer's autostart unit waits for the network (`Wants=/After=network-online.target`) as belt-and-suspenders.", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5412867Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5412976Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5413078Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5413182Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5413277Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5413382Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5413497Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5413620Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5413721Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5413812Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5413921Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5414027Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5414136Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5414288Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5414390Z "line": 276 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5414493Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5414597Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5414740Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5414847Z "line": 1201 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5414951Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5415058Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5415195Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5415305Z "line": 197 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5415411Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5415514Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5415639Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5415754Z "line": 344 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5415853Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5415954Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5416102Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5416211Z "line": 381 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5416322Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5416421Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5416549Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5416660Z "line": 2075 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5416764Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5416860Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5416947Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5417054Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5417165Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5417271Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5417379Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5417482Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5417603Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5417710Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5417910Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5418053Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5418162Z "line": 1158 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5418263Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5418368Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5418492Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5418711Z "line": 10580 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5418812Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5418912Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5419097Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5419203Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5419302Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5419398Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5419509Z "id": "REQ-DOCS-1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5419741Z "title": "Dual-audience docs (human + AI dev-agent), markdown once / two depths", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5419847Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5419955Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5420059Z "impl" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5420160Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5420263Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5420366Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5420486Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5420592Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5420686Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5420811Z "path": "docs-site/src/index.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5434669Z "line": 50 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5434793Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5434899Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5435003Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5435118Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5435228Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5435341Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5435437Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5435604Z "path": ".github/workflows/docs-publish.yml", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5435713Z "line": 12 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5435813Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5435921Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5436058Z "path": "crates/xtask/src/main.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5436173Z "line": 14 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5436292Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5436387Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5436483Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5436588Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5436706Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5436813Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5436917Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5437021Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5437142Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5437246Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5437355Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5437456Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5437556Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5437646Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5437757Z "id": "REQ-DOCS-2", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5437960Z "title": "Sub-10-minute runnable killer quickstart per audience", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5438067Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5438166Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5438266Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5438367Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5438467Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5438570Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5438694Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5438803Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5438906Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5439230Z "path": "docs-site/src/harness-contract/integration-checklist.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5439346Z "line": 3 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5439451Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5439554Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5439717Z "path": "docs-site/src/quickstart/adapter.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5439822Z "line": 3 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5439922Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5440028Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5440184Z "path": "docs-site/src/quickstart/messaging.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5440285Z "line": 3 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5440384Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5440489Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5440586Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5440690Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5440809Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5441056Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5441165Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5441270Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5441383Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5441491Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5441593Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5441840Z "path": "crates/spt/tests/quickstart_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5441946Z "line": 14 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5442055Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5442154Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5442256Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5442360Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5442474Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5442584Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5442670Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5442774Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5442872Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5442975Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5443080Z "id": "REQ-DOCS-3", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5443400Z "title": "Diátaxis structure; one canonical way to do X", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5443534Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5443642Z "doc" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5443743Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5443840Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5443952Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5444056Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5444176Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5444281Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5444419Z "path": "docs-site/src/index.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5444520Z "line": 42 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5444624Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5444724Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5444810Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5444915Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5445039Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5445139Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5445244Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5445343Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5445454Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5445558Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5445663Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5445769Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5445878Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5445983Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5446074Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5446178Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5446277Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5446382Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5446491Z "id": "REQ-DOCS-4", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5446723Z "title": "Agent-consumable layer (llms.txt, manifest schema, MCP, CLI help)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5446833Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5446937Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5447043Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5447139Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5447242Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5447344Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5447458Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5447562Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5447673Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5447777Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5447911Z "path": "docs/DOCS-STRATEGY.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5448021Z "line": 35 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5448126Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5448225Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5448331Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5448439Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5448555Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5448665Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5448763Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5448913Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5449125Z "line": 746 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5449230Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5449330Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5449461Z "path": "crates/xtask/src/main.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5449567Z "line": 15 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5449667Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5449766Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5449872Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5449977Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5450081Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5450306Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5450405Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5450511Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5450616Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5450720Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5450826Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5450978Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5451184Z "line": 1682 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5451283Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5451388Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5451475Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5451579Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5451668Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5451768Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5451873Z "id": "REQ-DOCS-5", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5452100Z "title": "Anti-drift: rustdoc/schema/exports/CLI-help generated + CI-checked", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5452225Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5452328Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5452429Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5452534Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5452633Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5452739Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5452858Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5452967Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5453073Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5453178Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5453287Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5453397Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5453502Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5453645Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5453756Z "line": 747 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5453850Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5453955Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5454090Z "path": "crates/xtask/src/main.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5454193Z "line": 113 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5454298Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5454395Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5454502Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5454592Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5454708Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5454808Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5454912Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5455046Z "path": ".github/workflows/ci.yml", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5455151Z "line": 190 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5455255Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5455357Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5455508Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5455623Z "line": 1719 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5455723Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5455823Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5455923Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5456028Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5456133Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5456253Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5456353Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5456452Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5456553Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5456654Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5456772Z "id": "REQ-DOCS-6", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5457145Z "title": "spt how-to : in-binary task-oriented agent instructions (anti-drift; quickstart prompts point agents at it)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5457260Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5457370Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5457473Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5457575Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5457670Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5457784Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5457885Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5457999Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5458112Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5458214Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5458380Z "path": "docs-site/src/quickstart/messaging.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5458490Z "line": 4 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5458595Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5458690Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5458790Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5458901Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5459100Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5459211Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5459310Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5459550Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5459671Z "line": 5240 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5459766Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5459867Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5459970Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5460069Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5460180Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5460384Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5460476Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5460632Z "path": "crates/spt/tests/quickstart_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5460732Z "line": 39 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5460833Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5460933Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5461033Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5461138Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5461243Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5461343Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5461453Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5461576Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5461681Z "line": 10742 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5461792Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5461885Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5461987Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5462093Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5462195Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5462286Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5462405Z "id": "REQ-ELEVATE-1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5465772Z "title": "Cross-platform self-elevating re-launch for privilege-gated commands: a pure decision seam `decide_elevation_path(os, elevation, interactive_tty, has_display, has_pkexec, has_term_emulator) -> ElevatePath{AlreadyElevated, InlineSudo, UacWindow, Pkexec, TerminalEmulator, PrintHint}` selecting how to re-acquire privilege, and the per-OS impure launchers it dispatches — Windows UAC console (ShellExecuteW `runas` on the abs-exe + verbatim argv; the elevated child does the work, prints 'You can close this window', and pauses for a keypress; the original prints 'Elevated terminal launched…' and exits 0; NEVER pipes the child's stdout back across the privilege boundary), Linux desktop pkexec (preferred, native polkit GUI auth) else x-terminal-emulator -e sudo (fallback list x-terminal-emulator→gnome-terminal→konsole→xterm), the existing interactive-TTY inline sudo, and the headless/no-path floor that prints the absolute-path command. Reused by every gated command (not subnet-specific). Generalizes should_auto_elevate.", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5465931Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5466040Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5466144Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5466241Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5466340Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5466454Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5466556Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5466669Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5466774Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5466876Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5466988Z "path": "CONTEXT.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5467103Z "line": 687 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5467200Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5467298Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5467407Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5467512Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5467625Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5467724Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5467830Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5467958Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5468072Z "line": 3572 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5468178Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5468282Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5468411Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5468526Z "line": 3617 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5468635Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5468735Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5468860Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5469045Z "line": 3679 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5469136Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5469241Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5469370Z "path": "crates/spt/src/elevation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5469475Z "line": 92 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5469699Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5469809Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5469947Z "path": "crates/spt/src/elevation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5470062Z "line": 148 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5470161Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5470260Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5470455Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5470563Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5470677Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5470783Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5470882Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5470982Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5471093Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5471206Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5471307Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5471445Z "path": "crates/spt/src/elevation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5471554Z "line": 442 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5471660Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5471765Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5471893Z "path": "crates/spt/src/elevation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5472004Z "line": 460 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5472107Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5472213Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5472328Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5472485Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5472643Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5473068Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5473365Z "id": "REQ-ENDPOINT-LIST-MERGE-LOCAL", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5475399Z "title": "`spt endpoint list` always merges this node's LOCAL (unadvertised) perches into the view; the `--local` flag is REMOVED (operator decision 2026-06-17). Rationale: `spt whoami` is a thin alias of `endpoint list` — a just-online agent running `whoami` must see its OWN perch, or it gets an omitted-self view ('chaos'). FIX: drop the `--local` flag + its `--detail` conflict test + the v0.10.0 REQ-PICKER-5 hint line (cli.rs:1678) + cmd_list_local; the bare list merges local perches into the subnet view; fix the whoami alias path accordingly. Run `cargo run -p xtask -- gen` (docs-drift, DEFAULT target). (v0.12.1)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5477140Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5477392Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5477601Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5477816Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5478015Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5478199Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5478414Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5478632Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5478866Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5479171Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5479391Z "path": "CONTEXT.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5479644Z "line": 711 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5479872Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5480063Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5480269Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5480473Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5480693Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5480949Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5481170Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5481404Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5481686Z "line": 1721 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5481906Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5482119Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5482339Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5482611Z "line": 3125 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5482841Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5483045Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5483265Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5483539Z "line": 3134 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5483766Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5483967Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5484167Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5484366Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5484577Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5484825Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5485206Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5485544Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5485878Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5486315Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5486693Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5487269Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5487737Z "line": 7950 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5488089Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5488386Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5488726Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5489431Z "line": 7991 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5489817Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5490156Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5490470Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5490776Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5491076Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5491475Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5491850Z "id": "REQ-ENDPOINT-PURGE", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5498198Z "title": "`spt endpoint purge ` fully removes an endpoint AND every record keyed on it — the formal teardown devs/CI need for clean test setup/reset. NOT consent-gated (a local dev/test op — no peer consent). OFFLINE-ONLY: refuses while the endpoint is online / daemon-hosted (deleting records out from under a live host risks the daemon re-creating or re-hosting mid-purge); `--force` STOPS it first (endpoint stop → wait for the daemon reconcile to un-host + reap the Psyche) THEN purges. Confirms interactively unless `--yes` (the CI path). Refuses purging the CALLER's OWN running id. All LOCAL — purge reaches only THIS node's records; a remote endpoint's records can't be touched, and its subnet-registry rows decay via the epoch-lease eviction (REQ-HAZARD-REGISTRY-DECAY). Removes: (1) the perch dir TREE recursively — owlery// incl every nested {id}-psyche / {id}-w* / shells child (info.json, ready marker, sessions.log ledger, spool.db, inbox, .idle/.more-done sentinels, auth token); (2) the registry address (registry::unregister_address); (3) the context store — ContextStore::remove_endpoint(id): the a- branch+worktree + the / rows from every p- branch (the same fn `fork --delete-source` already uses); (4) node-local trust rows keyed on the id — access.json + visibility.json. Reuse-heavy: it is `fork --delete-source` generalized (recursive perch remove + unregister + remove_endpoint) + the trust-record cleanup; `endpoint rename` already enumerates the same record set + uses the same offline-only gate. (v0.12.0)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5502601Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5502844Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5503064Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5503268Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5503469Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5503670Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5503879Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5504088Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5504310Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5504545Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5504767Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5504987Z "path": "CONTEXT.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5505244Z "line": 163 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5505463Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5505664Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5505859Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5506064Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5506293Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5506538Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5506746Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5507003Z "path": "crates/spt-store/src/visibility.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5507303Z "line": 105 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5507542Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5507751Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5507966Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5508242Z "line": 7219 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5508467Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5508666Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5508863Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5509140Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5509358Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5509590Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5509814Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5510032Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5510303Z "line": 7384 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5510518Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5510719Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5511072Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5511262Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5511487Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5511721Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5511940Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5512163Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5512534Z "line": 7355 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5512756Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5512956Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5513151Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5513338Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5513533Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5513729Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5513949Z "id": "REQ-ENDPOINT-STOP-OFFLINE", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5515509Z "title": "H3: `spt endpoint stop ` marks the endpoint OFFLINE (alive=false), not merely de-readied. cmd_stop (cli.rs:2994-3010) removes the ready marker + unregisters the address but does NOT set status offline, so a stopped daemon-hosted endpoint still reports alive=true (status=online latch). FIX: add set_status(perch, STATUS_OFFLINE) to cmd_stop — folds with B2 (same setter). Unit: stop → is_perch_alive=false / alive=false. (v0.12.0)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5516788Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5517024Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5517234Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5517436Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5523051Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5523302Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5523541Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5523793Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5524016Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5524213Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5524432Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5524679Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5524894Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5525134Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5525401Z "line": 3165 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5525637Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5525831Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5526031Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5526240Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5526455Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5526694Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5526922Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5527122Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5527348Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5527589Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5527804Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5528029Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5528297Z "line": 7331 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5528522Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5528720Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5528909Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5529205Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5529392Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5529578Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5529777Z "id": "REQ-EP-1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5530054Z "title": "Day-one endpoint types; open type system", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5530359Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5530584Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5530787Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5530990Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5531181Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5531394Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5531615Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5531849Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5532072Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5532273Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5532492Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5532726Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5532945Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5533188Z "path": "crates/spt-proto/src/endpoint.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5533485Z "line": 77 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5533697Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5533895Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5534139Z "path": "crates/spt-proto/src/endpoint.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5534421Z "line": 94 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5534639Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5534835Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5535016Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5535215Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5535559Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5535811Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5536028Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5536225Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5536447Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5536677Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5537006Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5537249Z "path": "crates/spt-proto/src/endpoint.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5537540Z "line": 161 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5537749Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5537955Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5538189Z "path": "crates/spt-proto/src/endpoint.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5538474Z "line": 178 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5538688Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5538886Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5539150Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5539341Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5539532Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5539713Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5539904Z "id": "REQ-EP-2", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5540214Z "title": "Agent endpoints vs Shells distinction in the type model", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5540552Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5540777Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5540981Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5541177Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5541390Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5541603Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5541818Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5542065Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5542274Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5542471Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5542686Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5542909Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5543114Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5543363Z "path": "crates/spt-proto/src/endpoint.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5543654Z "line": 114 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5543867Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5544063Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5544301Z "path": "crates/spt-proto/src/endpoint.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5544579Z "line": 131 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5544789Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5544985Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5545218Z "path": "crates/spt-proto/src/endpoint.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5545489Z "line": 138 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5545699Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5545892Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5546086Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5546325Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5546531Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5546757Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5546961Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5547156Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5547360Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5547594Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5547805Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5548047Z "path": "crates/spt-proto/src/endpoint.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5548328Z "line": 190 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5548539Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5548739Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5549064Z "path": "crates/spt-proto/src/endpoint.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5549340Z "line": 208 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5549558Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5549753Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5549981Z "path": "crates/spt-proto/src/endpoint.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5550263Z "line": 221 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5550483Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5550679Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5550873Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5551075Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5551255Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5551432Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5551623Z "id": "REQ-EP-3", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5551955Z "title": "Messaging payloads carry typed operation commands + file blobs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5552311Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5552534Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5552730Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5552926Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5553121Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5553421Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5553636Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5553870Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5554070Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5554276Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5554476Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5554808Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5555025Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5555259Z "path": "crates/spt-proto/src/payload.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5555541Z "line": 31 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5555754Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5555951Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5556184Z "path": "crates/spt-proto/src/payload.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5556457Z "line": 49 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5556670Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5556861Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5557052Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5557242Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5557455Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5557686Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5557902Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5558088Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5558302Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5558532Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5558751Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5559075Z "path": "crates/spt-proto/src/payload.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5559366Z "line": 156 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5559585Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5559775Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5560006Z "path": "crates/spt-proto/src/payload.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5560289Z "line": 164 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5560494Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5560695Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5560939Z "path": "crates/spt-proto/src/payload.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5561224Z "line": 177 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5561447Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5561644Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5561878Z "path": "crates/spt-proto/src/payload.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5562163Z "line": 200 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5562382Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5562563Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5562808Z "path": "crates/spt-proto/src/payload.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5563089Z "line": 216 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5563314Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5563520Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5563762Z "path": "crates/spt-proto/src/payload.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5564043Z "line": 233 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5564258Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5564460Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5564649Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5564850Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5565041Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5565240Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5565440Z "id": "REQ-EP-4", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5565733Z "title": "PresenceChannel broker endpoint (seam day-one)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5566053Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5566281Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5566487Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5566692Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5566887Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5567102Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5567317Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5567550Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5567774Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5567973Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5568189Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5568434Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5568658Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5568895Z "path": "crates/spt-daemon/src/brain.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5569259Z "line": 764 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5569482Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5569678Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5569912Z "path": "crates/spt-daemon/src/brain.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5570199Z "line": 1127 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5570408Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5570613Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5570850Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5571237Z "line": 2270 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5571460Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5571651Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5571885Z "path": "crates/spt-daemon/src/msg.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5572162Z "line": 118 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5572496Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5572695Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5572937Z "path": "crates/spt-daemon/src/msg.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5573221Z "line": 699 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5573440Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5573640Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5573870Z "path": "crates/spt-daemon/src/msg.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5574136Z "line": 836 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5574356Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5574551Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5574789Z "path": "crates/spt-daemon/src/nethost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5575076Z "line": 321 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5575291Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5575490Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5575734Z "path": "crates/spt-daemon/src/nethost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5576019Z "line": 508 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5576240Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5576436Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5576685Z "path": "crates/spt-daemon/src/nethost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5576975Z "line": 1334 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5577199Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5577395Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5577596Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5577785Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5578005Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5578240Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5578461Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5578665Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5578874Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5579232Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5579451Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5579684Z "path": "crates/spt-daemon/src/msg.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5579961Z "line": 927 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5580186Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5580385Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5580639Z "path": "crates/spt-daemon/tests/presence.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5580929Z "line": 76 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5581150Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5581352Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5581591Z "path": "crates/spt-daemon/tests/presence.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5581882Z "line": 147 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5582097Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5582296Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5582492Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5582689Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5582883Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5583075Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5583279Z "id": "REQ-EP-5", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5584110Z "title": "Concrete shell instantiation model: spawn-mints-instance (vs relink/online), registered-on-node permission + broadcast-is-discovery, per-shell require_approval gate, max_instances_per_owner + over_cap, instance aliasing, discovery scope", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5584950Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5585173Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5585393Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5585594Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5585783Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5585984Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5586195Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5586417Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5586658Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5586877Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5587072Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5587293Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5587527Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5587744Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5587997Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5588302Z "line": 367 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5588513Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5588713Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5589031Z "path": "crates/spt-daemon/src/shelldisc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5589430Z "line": 18 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5589648Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5589845Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5590088Z "path": "crates/spt-daemon/src/shelldisc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5590375Z "line": 63 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5590684Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5590888Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5591117Z "path": "crates/spt-daemon/src/shelldisc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5591409Z "line": 92 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5591629Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5591827Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5592066Z "path": "crates/spt-daemon/src/shelldisc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5592352Z "line": 167 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5592566Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5592767Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5593005Z "path": "crates/spt-daemon/src/shelldisc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5593292Z "line": 179 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5593525Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5593715Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5593954Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5594229Z "line": 114 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5594446Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5594648Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5594885Z "path": "crates/spt-store/src/shellinfo.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5595176Z "line": 22 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5595409Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5595609Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5595849Z "path": "crates/spt-store/src/shellinfo.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5596135Z "line": 145 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5596348Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5596554Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5596779Z "path": "crates/spt-store/src/shellinfo.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5597072Z "line": 174 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5597298Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5597504Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5597743Z "path": "crates/spt-store/src/shellinfo.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5598029Z "line": 196 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5598252Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5598453Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5598687Z "path": "crates/spt-store/src/shellinfo.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5599055Z "line": 221 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5599278Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5599472Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5599706Z "path": "crates/spt-store/src/shellinfo.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5603489Z "line": 247 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5603736Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5603946Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5604204Z "path": "crates/spt-store/src/shellinfo.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5604500Z "line": 270 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5604717Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5604916Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5605160Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5605455Z "line": 104 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5605683Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5605879Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5606104Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5606380Z "line": 6068 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5606593Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5606790Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5607015Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5607281Z "line": 6202 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5607490Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5607670Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5607887Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5608145Z "line": 6368 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5608365Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5608560Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5608780Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5609136Z "line": 6896 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5609352Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5609548Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5609742Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5610080Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5610299Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5610526Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5610740Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5610998Z "path": "crates/spt/tests/notify_shell_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5611294Z "line": 16 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5611632Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5611829Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5612066Z "path": "crates/spt/tests/shell_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5612342Z "line": 15 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5612557Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5612744Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5612942Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5613138Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5613347Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5613576Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5613782Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5614025Z "path": "crates/spt-daemon/src/shelldisc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5614310Z "line": 246 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5614530Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5614722Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5614959Z "path": "crates/spt-daemon/src/shelldisc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5615239Z "line": 306 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5615453Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5615647Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5615885Z "path": "crates/spt-daemon/src/shelldisc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5616167Z "line": 363 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5616387Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5616582Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5616820Z "path": "crates/spt-store/src/shellinfo.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5617106Z "line": 286 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5617322Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5617512Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5617660Z "path": "crates/spt-store/src/shellinfo.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5617765Z "line": 338 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5617870Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5617961Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5618111Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5618217Z "line": 783 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5618325Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5618423Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5618543Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5618654Z "line": 8751 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5618757Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5618858Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5619048Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5619164Z "line": 8904 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5619264Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5619363Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5619488Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5619597Z "line": 9493 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5619701Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5619803Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5619926Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5620040Z "line": 9609 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5620141Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5620246Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5620336Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5620442Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5620542Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5620645Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5620750Z "id": "REQ-EP-6", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5622365Z "title": "Gateway type acceptance: a Gateway-typed perch binds (api bind --type, open type system — un-hardcode the live_agent default), advertises/addressable like any endpoint, owns shells (owner validation not agent-family-gated), subscribes to digests, and is the user-msg identity gate's user-backed origin (REQ-MSG-5); in-tree mock-gateway fixture (R-DOCS-2 pattern, no downstream adapter code). Cross-node WAN Gateway-origin (registry endpoint_type trust) tracked by REQ-MSG-6", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5622492Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5622592Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5622703Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5622802Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5622902Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5623108Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5623208Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5623319Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5623418Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5623517Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5623650Z "path": "CONTEXT.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5623756Z "line": 227 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5623956Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5624056Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5624155Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5624256Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5624370Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5624479Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5624580Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5624723Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5624832Z "line": 212 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5624934Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5625038Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5625138Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5625234Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5625343Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5625452Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5625554Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5625690Z "path": "crates/spt/tests/gateway_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5625799Z "line": 18 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5625900Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5626003Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5626098Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5626193Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5626304Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5626408Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5626512Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5626665Z "path": "crates/spt-daemon/src/shellhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5626774Z "line": 556 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5626867Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5626971Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5627103Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5627205Z "line": 904 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5627309Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5627409Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5627510Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5627605Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5627710Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5627806Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5627914Z "id": "REQ-EP-7", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5629709Z "title": "Durable live-role.md: a per-agent broad-purpose statement in tracked/agents// beside live-context.md (replicates with the mind on the same a- branch); renders FIRST at start-transition context injection (role -> live-context -> project-context); SOLE writer `spt endpoint role --overwrite ` — mechanical no-automated-writer guarantee (echo-commune ingest / signoff / Psyche reconcile structurally exclude it). The user-backed-origin hard gate on the writer is a deferred later tightening (rides the user-msg identity plumbing)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5629833Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5629942Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5630043Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5630148Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5630248Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5630358Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5630453Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5630562Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5630663Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5630764Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5630877Z "path": "CONTEXT.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5630988Z "line": 490 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5631083Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5631186Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5631290Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5631391Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5631494Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5631598Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5631704Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5631832Z "path": "crates/spt-daemon/src/sync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5631941Z "line": 505 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5632043Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5632147Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5632276Z "path": "crates/spt-live/src/resume.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5632381Z "line": 87 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5632586Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5632686Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5632847Z "path": "crates/spt-store/src/contextstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5632954Z "line": 81 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5633052Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5633240Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5633390Z "path": "crates/spt-store/src/contextstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5633491Z "line": 166 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5633588Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5633692Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5633821Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5633922Z "line": 1645 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5634025Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5634129Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5634225Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5634331Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5634453Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5634564Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5634664Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5634768Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5634869Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5634984Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5635078Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5635213Z "path": "crates/spt-daemon/src/sync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5635317Z "line": 623 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5635422Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5635523Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5635665Z "path": "crates/spt-live/src/ingest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5635765Z "line": 212 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5635871Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5635965Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5636094Z "path": "crates/spt-live/src/resume.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5636204Z "line": 307 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5636303Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5636407Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5636535Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5636644Z "line": 7724 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5636749Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5636845Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5636972Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5637077Z "line": 7751 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5637183Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5637282Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5637383Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5637483Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5637587Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5637688Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5637788Z "id": "REQ-FRONT-1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5637998Z "title": "Day-one launcher/manager frontend (list/launch/attach/init)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5638117Z "requiredStages": [], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5638222Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5638322Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5638432Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5638551Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5638652Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5638761Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5638880Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5639062Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5639166Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5639265Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5639379Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5639487Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5639591Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5639687Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5639797Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5639901Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5640002Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5640107Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5640206Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5640308Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5640441Z "id": "REQ-HAZARD-ATTACH-WEDGE", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5646025Z "title": "A legitimately dead PTY child (real crash/kill) + an undrained operator pump must NOT wedge the broker for all other clients. ROOT (v0.12.0 real-harness defect): loopback attach output is a blocking write_all into a bounded 64KB tokio duplex (nethost.rs:1040,1090); when the operator's rc pump stops draining (tab closed) the buffer fills and write_all blocks forever (the 'loopback never hangs' assumption at nethost.rs:1103 is false), parking a worker in the 2-worker net runtime (nethost.rs:640); a couple of these saturate BOTH workers → every new attach / `endpoint run` stalls right after 'PUMP_IPC_READER: spawned' → 30s FIRST_EVENT_GRACE → 'no output / dead or wedged'; `daemon stop` cannot join the stuck workers. DISTINCT from the removed B1 path-(c) mutex deadlock. DISPOSITION = PROVE-DON'T-CHANGE (doyle GATE-PASS @e883f45, 2026-06-18): this ROOT is the SUPERSEDED v0.12.0 hypothesis — the post-L0 code ALREADY prevents the wedge, so NO fail-fast / worker-count code was added. serve_attach forwards fire-and-forget (net_stream_send op_id=None) and the broker-side send_stream is already BROKER-QUIC-DEADLINE-bounded (bounded_block_on, 10s); the loopback duplex is drained broker-INTERNALLY by the operator row's own read pump (RecvHalf::Loopback, retentive_cap==0 → evict-not-park) so a dead rc (a dropped IPC subscriber) never backs peer_w up; bounded_block_on parks the BROKER DISPATCH thread, not a net worker → no worker-pool exhaustion (full mechanism in the required_stages comment). Folds the status=online sub-check: a dead spt-hosted endpoint is marked OFFLINE within one reconcile tick on abrupt child death (broker exit-waiter reaps the session → B2 sees it absent) — PROVEN, no change. (v0.12.1)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5646359Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5646464Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5646568Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5646674Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5646774Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5646882Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5646987Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5647091Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5647189Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5647294Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5647405Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5647504Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5647609Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5647714Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5647837Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5647943Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5648096Z "path": "crates/spt/tests/attach_wedge_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5648200Z "line": 300 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5648297Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5648401Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5648500Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5648611Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5648725Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5648830Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5649039Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5649135Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5649241Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5649340Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5649474Z "id": "REQ-HAZARD-BIND-CWD-UNSET", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5652103Z "title": "A bound endpoint's `info.cwd` is SET at bind so a freshly-created perch appears under its own project tab. ROOT (found, v0.13.0): `info.cwd` is NEVER set on bind — `cmd_bind` (spt-hosted) and `bind_from_seed` (harness-hosted) never thread cwd into `establish_perch`/`rec.cwd`. FIX: `cmd_bind` reads its own `current_dir` (the broker spawned it in `project_cwd`); `bind_from_seed` passes `seed.cwd` (already captured at seed time, currently DISCARDED). DISTINCT from REQ-PICKER-HISTORY-FRESH (v0.12.1) — that unioned cwd-origin into picker MEMBERSHIP but tested merge_origin_project with a PROVIDED origin; it never asserted `info.cwd` is actually set on bind, so a real `endpoint run` perch still had an empty cwd and the union had nothing to union. This is the v0.12.1 P1 'appears under its own project right away' claim that was REFUTED in the changelog — delivered for real here. (v0.13.0)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5652241Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5652339Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5652444Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5652548Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5652647Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5652752Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5652853Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5653091Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5653191Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5653300Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5653406Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5653520Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5653620Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5653726Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5653963Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5654064Z "line": 257 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5654168Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5654259Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5654365Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5654464Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5654578Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5654680Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5654774Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5654941Z "path": "crates/spt/tests/bind_cwd_project_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5655047Z "line": 93 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5655150Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5655249Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5655345Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5655456Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5655564Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5655669Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5655770Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5655902Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5656018Z "line": 802 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5656128Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5656227Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5656366Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5656475Z "line": 824 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5656570Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5656671Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5656804Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5656905Z "line": 855 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5657010Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5657119Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5657219Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5657315Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5657418Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5657513Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5657656Z "id": "REQ-HAZARD-BRAIN-RESPAWN-PATH", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5660290Z "title": "The broker respawns the brain onto the APPLIED bytes, not the renamed old binary: the candidate-binary default is the canonical exe path captured ONCE at broker start, never a per-spawn std::env::current_exe() — on Linux current_exe (readlink /proc/self/exe) is inode-tracking and follows the `apply` rename (spt -> spt.old-N), so a resident broker would respawn the brain onto OLD bytes while recording `applied` (Windows GetModuleFileName is path-at-start, so Windows was green; ADR-0018 Q3 silently assumed path-string semantics). Backstop: promotion gates on bytes — a trial promotes only if brain.ready exe_hash == the staged artifact hash for this platform, else auto-rollback + loud notif (readiness != new-bytes was the false-success that recorded applied:8 over a v0.4.0 brain on kitsubito, 2026-06-11). KNOWN-HAZARDS 6.11.", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5660409Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5660510Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5660607Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5660706Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5660813Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5660908Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5661012Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5661119Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5661237Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5661350Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5661452Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5661575Z "path": "docs/KNOWN-HAZARDS.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5661680Z "line": 333 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5661781Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5661876Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5661966Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5662072Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5662181Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5662295Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5662401Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5662552Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5662754Z "line": 494 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5662857Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5662956Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5663104Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5663208Z "line": 499 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5663404Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5663503Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5663651Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5663751Z "line": 874 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5663860Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5663956Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5664104Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5664208Z "line": 915 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5664310Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5664414Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5664542Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5664643Z "line": 926 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5664743Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5664852Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5664991Z "path": "crates/spt-daemon/src/relcache.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5665100Z "line": 358 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5665201Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5665302Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5665405Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5665511Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5665616Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5665724Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5665828Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5665987Z "path": "crates/spt/tests/brain_respawn_rename.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5666095Z "line": 30 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5666206Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5666297Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5666401Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5666511Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5666621Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5666730Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5666825Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5666973Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5667082Z "line": 1493 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5667189Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5667293Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5667441Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5667546Z "line": 1518 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5667649Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5667746Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5667880Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5667992Z "line": 1535 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5668097Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5668193Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5668338Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5668448Z "line": 1578 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5668549Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5668652Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5668753Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5668854Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5669029Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5669131Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5669296Z "id": "REQ-HAZARD-BRAIN-RESTART-LIFECYCLE-REHYDRATE", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5671959Z "title": "B4 (deepest): a bare brain restart (broker survives) REHYDRATES the live-agent lifecycle so post-restart endpoints are hosted + attachable. Today resume_sessions (brainproc.rs:186, brain.rs:797-809) re-subscribes to the broker's PTY sessions but ALL BrainLifecycle instances (lifecycle.rs:58-130; the ephemeral brain.rs:254-275) are LOST on restart → a post-restart live endpoint gets no livehost → its Psyche is never (re)hosted and new spawns die / can't attach until a FULL daemon reset (operator: perri's brain kill+restart wedged everything until a full daemon kill). FIX: on brain startup, rebuild a BrainLifecycle per resumed live-capable session — load the manifest from the adapter registry → instantiate → start the pulse — the rehydrate the resume no-op cannot do. Composes with B2 (the reconcile re-hosts from the honest on-disk status after rehydrate). (v0.12.0)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5672182Z "requiredStages": [], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5672288Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5672402Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5672512Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5672628Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5672731Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5672918Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5673036Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5673137Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5673242Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5673347Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5673451Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5673560Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5673659Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5673768Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5673872Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5673988Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5674082Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5674187Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5674293Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5674387Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5674546Z "id": "REQ-HAZARD-BRAIN-RESTART-PSYCHE-DUP", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5678344Z "title": "A bare brain restart leaves EXACTLY ONE `{id}-psyche` process per endpoint — no duplicate. On an abrupt brain death stop_host never runs (the LiveSet + owned child handles die with the brain) and Breap's job/group only reaps at DAEMON stop, so the PRIOR brain's Psyche stays ALIVE; the respawned brain's reconcile re-hosts a SECOND Psyche and overwrites the `{id}-psyche` perch pid, leaving the old one untracked + alive = a duplicate that lingers until daemon-stop (the operator's 'brain kill+restart wedged everything'). FIX: at brain start, BEFORE the first reconcile re-hosts, reap any pre-existing `{id}-psyche` orphan — ID-SPECIFICALLY (recycle-safe on the shared box, where sibling agents share the `claude` basename): scoped-kill the recorded pid ONLY IF it is alive AND its exe basename == the adapter's psyche program (normalize_basename) AND its COMMAND LINE contains the full psyche id `-psyche` (baked via {id}); a sibling never carries THIS id, and any unreadable signal FAILS SAFE (decline to reap — a missed dup is bounded by Breap, a wrong-kill is catastrophic). CAVEAT: the cmdline carries `-psyche` only when the adapter's psyche_init.command uses {id} (the norm); a non-{id} adapter safely MISSES the reap (today's behavior, Breap bounds it) — never a wrong-kill. (v0.12.0)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5678482Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5678586Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5678691Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5678795Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5678893Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5679081Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5679190Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5679308Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5679410Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5679514Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5679613Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5679724Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5679833Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5679943Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5680095Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5680199Z "line": 570 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5680297Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5680396Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5680538Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5680649Z "line": 594 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5680748Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5680853Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5680988Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5681096Z "line": 620 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5681197Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5681298Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5681444Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5681549Z "line": 679 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5681653Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5681751Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5681890Z "path": "crates/spt-store/src/proc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5682094Z "line": 89 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5682200Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5682300Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5682423Z "path": "crates/spt-store/src/proc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5682534Z "line": 134 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5682724Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5682829Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5682916Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5683025Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5683129Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5683235Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5683344Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5683521Z "path": "crates/spt/tests/brain_restart_psyche_dup_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5683629Z "line": 20 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5683730Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5683832Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5683930Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5684030Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5684139Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5684247Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5684351Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5684495Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5684604Z "line": 1047 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5684713Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5684810Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5684956Z "path": "crates/spt-store/src/proc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5685057Z "line": 445 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5685158Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5685262Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5685362Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5685459Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5685553Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5685658Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5685806Z "id": "REQ-HAZARD-BROKER-PROCESS-ISOLATION", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5688508Z "title": "Broker and brain are separate processes: the broker runs as its own long-lived per-machine process that survives every brain restart, so a routine (brain-only) self-update restarts the brain onto the swapped binary while every hosted endpoint (PTY child, live QUIC conn, listening socket) stays untouched at the PROCESS level. The in-process-thread broker (daemon.rs:165-170) is a regression that silently unrealizes REQ-UPD-3 — apply degrades to an in-process Brain::handoff no-op and new code does not run until an unrelated restart (KNOWN-HAZARDS 6.7). Evidence must prove process-level survival (SPIKE-01/03 productionized as int: PTY child + live QUIC survive a brain-PROCESS restart onto a swapped binary), re-pointing the regression-masked in-process int tags currently on REQ-DAEMON-2 / REQ-UPD-3 (ADR-0018).", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5688629Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5688737Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5688837Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5689029Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5689127Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5689232Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5689336Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5689444Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5689564Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5689660Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5689759Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5689893Z "path": "docs/KNOWN-HAZARDS.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5690007Z "line": 302 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5690107Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5690208Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5690308Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5690412Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5690523Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5690627Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5690732Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5690880Z "path": "crates/spt-daemon/src/applyhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5690989Z "line": 108 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5691094Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5691195Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5691337Z "path": "crates/spt-daemon/src/brain.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5691443Z "line": 843 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5691548Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5691647Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5691782Z "path": "crates/spt-daemon/src/brain.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5692013Z "line": 1043 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5692113Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5692208Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5692359Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5692469Z "line": 23 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5692654Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5692760Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5692908Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5693012Z "line": 113 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5693123Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5693213Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5693360Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5693466Z "line": 158 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5693571Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5693680Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5693884Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5694034Z "line": 218 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5694185Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5694334Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5694537Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5694666Z "line": 261 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5694766Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5694868Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5695040Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5695197Z "line": 275 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5695385Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5695560Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5695780Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5695942Z "line": 320 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5696084Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5696246Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5696485Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5696648Z "line": 347 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5696800Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5696954Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5697196Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5697372Z "line": 359 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5697528Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5697677Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5697925Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5698086Z "line": 373 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5698282Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5698439Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5698678Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5698850Z "line": 400 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5699097Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5699255Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5699494Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5699655Z "line": 643 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5699816Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5699966Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5700210Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5700390Z "line": 989 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5700558Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5700705Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5700934Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5701107Z "line": 295 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5701268Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5701441Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5701668Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5701840Z "line": 1191 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5702008Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5702160Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5702395Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5702555Z "line": 1263 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5702721Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5702890Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5703120Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5703300Z "line": 1275 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5708504Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5708905Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5709572Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5709782Z "line": 1976 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5709914Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5710035Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5710229Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5710650Z "line": 188 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5710775Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5710898Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5711075Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5711213Z "line": 265 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5711318Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5711442Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5711624Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5711762Z "line": 276 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5711880Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5711991Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5712167Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5712302Z "line": 329 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5712424Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5712543Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5712720Z "path": "crates/spt-daemon/src/deadline.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5712853Z "line": 56 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5712974Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5713110Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5713286Z "path": "crates/spt-daemon/src/deadline.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5713408Z "line": 188 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5713532Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5713657Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5713827Z "path": "crates/spt-daemon/src/endpoint.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5713967Z "line": 82 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5714085Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5714200Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5714376Z "path": "crates/spt-daemon/src/lifecycle.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5714509Z "line": 308 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5714633Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5714752Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5714925Z "path": "crates/spt-daemon/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5715058Z "line": 424 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5715178Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5715301Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5715445Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5715578Z "line": 2006 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5715686Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5715810Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5715928Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5716050Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5716195Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5716313Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5716442Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5716623Z "path": "crates/spt/tests/brain_survive.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5716752Z "line": 57 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5716881Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5716999Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5717167Z "path": "crates/spt/tests/n1_pairing.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5717300Z "line": 41 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5717430Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5717543Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5717658Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5717783Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5717920Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5718050Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5718182Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5718360Z "path": "crates/spt-daemon/src/applyhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5718497Z "line": 532 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5718615Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5718735Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5718910Z "path": "crates/spt-daemon/src/applyhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5719136Z "line": 757 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5719259Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5719389Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5719568Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5719689Z "line": 1067 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5719817Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5720065Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5720246Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5720375Z "line": 1101 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5720503Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5720629Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5720803Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5721058Z "line": 1143 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5721172Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5721302Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5721473Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5721583Z "line": 1215 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5721693Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5721787Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5721932Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5722036Z "line": 1228 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5722145Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5722246Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5722393Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5722508Z "line": 1251 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5722612Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5722703Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5722842Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5722951Z "line": 1277 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5723060Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5723167Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5723308Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5723418Z "line": 1291 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5723525Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5723613Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5723755Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5723861Z "line": 1315 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5723968Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5724072Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5724217Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5724325Z "line": 1447 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5724430Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5724536Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5724674Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5724785Z "line": 1623 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5724889Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5724979Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5725137Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5725246Z "line": 1678 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5725351Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5725456Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5725584Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5725690Z "line": 1724 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5725795Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5725894Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5726034Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5726152Z "line": 1769 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5726265Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5726365Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5726516Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5726630Z "line": 1813 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5726740Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5726840Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5726987Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5727098Z "line": 1855 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5727197Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5727302Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5727441Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5727550Z "line": 2329 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5727652Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5727756Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5727908Z "path": "crates/spt-daemon/src/deadline.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5728019Z "line": 217 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5728123Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5728223Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5728362Z "path": "crates/spt-daemon/src/deadline.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5728552Z "line": 233 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5728663Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5728766Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5728906Z "path": "crates/spt-daemon/src/deadline.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5729104Z "line": 254 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5729203Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5729447Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5729586Z "path": "crates/spt-daemon/src/deadline.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5729696Z "line": 265 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5729804Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5729910Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5730053Z "path": "crates/spt-daemon/src/deadline.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5730162Z "line": 278 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5730268Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5730373Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5730506Z "path": "crates/spt-daemon/src/deadline.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5730612Z "line": 289 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5730716Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5730831Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5730959Z "path": "crates/spt-daemon/src/deadline.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5731077Z "line": 301 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5731179Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5731278Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5731429Z "path": "crates/spt-daemon/src/deadline.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5731539Z "line": 312 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5731637Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5731737Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5731881Z "path": "crates/spt-daemon/src/deadline.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5731995Z "line": 323 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5732090Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5732196Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5732323Z "path": "crates/spt-daemon/src/deadline.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5732434Z "line": 332 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5732534Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5732643Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5732787Z "path": "crates/spt-daemon/src/deadline.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5732896Z "line": 342 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5733000Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5733097Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5733245Z "path": "crates/spt-daemon/src/deadline.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5733344Z "line": 358 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5733455Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5733553Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5733698Z "path": "crates/spt-daemon/src/lifecycle.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5733803Z "line": 758 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5733907Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5734013Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5734150Z "path": "crates/spt-daemon/src/lifecycle.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5734264Z "line": 794 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5734373Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5734472Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5734613Z "path": "crates/spt-daemon/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5734724Z "line": 966 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5734819Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5734919Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5735058Z "path": "crates/spt-daemon/tests/resume.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5735172Z "line": 145 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5735276Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5735382Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5735515Z "path": "crates/spt-daemon/tests/resume.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5735625Z "line": 224 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5735735Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5735834Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5735974Z "path": "crates/spt-daemon/tests/resume.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5736082Z "line": 293 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5736192Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5736294Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5736440Z "path": "crates/spt/tests/brain_split.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5736555Z "line": 17 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5736656Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5736764Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5736906Z "path": "crates/spt/tests/brain_split.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5737133Z "line": 104 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5737233Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5737339Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5737443Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5737543Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5737649Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5737743Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5737963Z "id": "REQ-HAZARD-BROKER-QUIC-DEADLINE", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5741347Z "title": "The broker bounds every brain-waiting QUIC op (dial / open_stream / send_stream) so a black-holed or dead peer fails PROMPTLY with an ORDINARY error the broker REPLIES, never an unbounded await. The bound (< the brain's 30s PUMP_PEER_IO_TIMEOUT so the BROKER fires first) surfaces to the pump as a normal broker error reply → peer_outcome's non-TimedOut arm → drop conn + redial next tick, the round CONTINUES and the heartbeat keeps advancing — it must NEVER manifest as the brain's own read-deadline (the A-half poison → supervised-restart path REQ-HAZARD-PUMP-IPC-DEADLINE guards). Exactly-once is preserved: a timed-out journaled op fails INSIDE its apply_once closure so no phantom conn_id/stream_id is recorded and a fresh tick re-dials cleanly. The happy path is unchanged (a live peer completes with zero added latency; the bound only bites a non-responsive peer). This is the ROOT-cause cure for the 2.2h hfenduleam pump wedge — a dead roster peer whose QUIC path the broker awaited unbounded — recurring on hfenduleam 2026-06-16.", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5741510Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5741619Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5741725Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5741825Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5741933Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5742033Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5742133Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5742230Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5742355Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5742460Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5742559Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5742693Z "path": "docs/KNOWN-HAZARDS.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5742813Z "line": 388 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5742917Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5743013Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5743118Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5743222Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5743338Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5743466Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5743560Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5743719Z "path": "crates/spt-daemon/src/nethost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5743828Z "line": 823 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5743928Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5744030Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5744171Z "path": "crates/spt-daemon/src/nethost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5744282Z "line": 846 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5744386Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5744486Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5744583Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5744683Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5744790Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5744900Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5745000Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5745160Z "path": "crates/spt-daemon/tests/netbroker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5745274Z "line": 228 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5745375Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5745479Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5745632Z "path": "crates/spt-daemon/tests/pump.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5745741Z "line": 468 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5745851Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5745947Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5746047Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5746146Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5746253Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5746362Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5746461Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5746605Z "path": "crates/spt-daemon/src/nethost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5746714Z "line": 1583 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5746820Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5746920Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5747024Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5747240Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5747338Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5747442Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5747575Z "id": "REQ-HAZARD-BROKER-SEED-WIRE-SKEW", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5751346Z "title": "A daemon-state wire-format change (e.g. the v0.9.0 adapter-agnostic Seed) does NOT take effect until a DELIBERATE full broker restart: the broker serves the seed-control channel and is RESIDENT across a brain-only self-update (ADR-0004 no-terminate-during-update forbids auto-killing it), so a NEW-version CLI talking to a still-resident OLD broker fails the seed handshake — the old broker cannot deserialize the new Seed (its formerly-required `adapter` field is gone) and drops the conn without an ack, which surfaces to the CLI as a raw UnexpectedEof 'failed to fill whole buffer'. spt-core must (a) surface an ACTIONABLE diagnostic on that seed-ack EOF (name the stale-broker cause + the `spt daemon stop` fix — the broker restarts on the next api call), never the cryptic io error; and (b) document the operational rule (a deliberate broker restart is required on any daemon-state wire change — NOT automatic) + the FORWARD discipline (daemon-state/Seed schema changes stay additive + serde-default so a resident OLD broker tolerates a NEW CLI across a brain-only update; note this would NOT have rescued 0.9.0 itself, since the old broker's `adapter` was a required field). perri PREP-4 FINDING 1 (v0.9.0 CLI vs stale 0.8.x broker).", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5751578Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5751689Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5751788Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5751892Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5751989Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5752093Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5752193Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5752309Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5752412Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5752512Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5752640Z "path": "docs/KNOWN-HAZARDS.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5752758Z "line": 395 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5752852Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5752958Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5753064Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5753167Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5753282Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5753378Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5753486Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5753636Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5753735Z "line": 75 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5753825Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5753936Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5754036Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5754140Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5754251Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5754365Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5754459Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5754566Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5754683Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5754784Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5754895Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5755032Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5755147Z "line": 632 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5755243Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5755345Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5755460Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5755546Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5755653Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5755757Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5755897Z "id": "REQ-HAZARD-CASCADE-WIPE-GUARD", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5756091Z "title": "No hard-delete of a parent hosting non-empty children (6.3)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5756221Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5756334Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5756441Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5756545Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5756654Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5756765Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5756878Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5757002Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5757109Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5757207Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5757513Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5757613Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5757724Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5757865Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5757974Z "line": 172 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5758079Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5758258Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5758406Z "path": "crates/spt/src/api/worker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5758511Z "line": 18 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5758615Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5758712Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5758845Z "path": "crates/spt/src/api/worker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5759022Z "line": 100 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5759112Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5759216Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5759312Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5759417Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5759521Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5759632Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5759746Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5759850Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5759971Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5760074Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5760179Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5760329Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5760446Z "line": 857 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5760557Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5760658Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5760789Z "path": "crates/spt/src/api/worker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5760889Z "line": 161 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5760995Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5761104Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5761237Z "path": "crates/spt/src/api/worker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5761347Z "line": 233 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5761447Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5761552Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5761652Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5761752Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5761848Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5761953Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5762095Z "id": "REQ-HAZARD-CHILD-CONSOLE-FLASH", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5762559Z "title": "Console-subsystem children of the console-less daemon spawn with CREATE_NO_WINDOW, or each spawn flashes a visible blank window on the user's desktop (5.8)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5762691Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5762797Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5762907Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5763015Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5763119Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5763224Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5763337Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5763441Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5763542Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5763675Z "path": "docs/KNOWN-HAZARDS.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5763784Z "line": 220 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5763886Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5763990Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5764095Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5764201Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5764314Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5764429Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5764534Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5764690Z "path": "crates/spt-daemon/src/shellhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5764796Z "line": 316 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5764905Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5765005Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5765150Z "path": "crates/spt-runtime/src/runtime.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5765258Z "line": 356 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5765368Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5765474Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5765621Z "path": "crates/spt-runtime/src/runtime.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5765722Z "line": 578 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5765831Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5765929Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5766082Z "path": "crates/spt-store/src/gitrun.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5766190Z "line": 77 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5766429Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5766538Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5766637Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5766748Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5766862Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5766976Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5767082Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5767281Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5767402Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5767511Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5767620Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5767763Z "path": "crates/spt-runtime/src/runtime.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5767877Z "line": 747 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5767978Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5768083Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5768235Z "path": "crates/spt-runtime/src/runtime.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5768332Z "line": 785 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5768439Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5768539Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5768668Z "path": "crates/spt-store/src/gitrun.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5768785Z "line": 166 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5768889Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5769067Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5769161Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5769257Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5769357Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5769457Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5769606Z "id": "REQ-HAZARD-CONFLICT-BOTH-PRESERVED", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5770211Z "title": "A surfaced concurrent context pair is durably preserved (both versions, tracked artifacts) until a strictly dominating write clears it; no reconcile failure path discards an unmerged version (6.6, ADR-0013)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5770329Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5770434Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5770526Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5770635Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5770730Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5770836Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5770945Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5771050Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5771160Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5771260Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5771368Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5771478Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5771579Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5771735Z "path": "crates/spt-daemon/src/reconcile.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5771851Z "line": 22 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5771941Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5772045Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5772175Z "path": "crates/spt-daemon/src/sync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5772284Z "line": 487 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5772388Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5772490Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5772636Z "path": "crates/spt-live/src/reconcile.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5772747Z "line": 17 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5772856Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5772961Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5773096Z "path": "crates/spt-live/src/reconcile.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5773209Z "line": 147 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5773309Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5773415Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5773561Z "path": "crates/spt-store/src/contextstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5773675Z "line": 226 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5773780Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5773873Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5774030Z "path": "crates/spt-store/src/contextstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5774141Z "line": 251 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5774250Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5774345Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5774503Z "path": "crates/spt-store/src/contextstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5774611Z "line": 277 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5774713Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5774817Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5774960Z "path": "crates/spt-store/src/syncmerge.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5775070Z "line": 124 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5775175Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5775395Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5775547Z "path": "crates/spt-store/src/syncmerge.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5775648Z "line": 224 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5775752Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5775843Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5775953Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5776147Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5776263Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5776377Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5776480Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5776594Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5776708Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5776825Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5776926Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5777084Z "path": "crates/spt-daemon/src/reconcile.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5777198Z "line": 63 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5777294Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5777403Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5777551Z "path": "crates/spt-daemon/src/reconcile.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5777666Z "line": 73 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5777770Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5777865Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5778018Z "path": "crates/spt-daemon/src/reconcile.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5778122Z "line": 85 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5778224Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5778333Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5778476Z "path": "crates/spt-daemon/tests/sync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5778582Z "line": 346 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5778680Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5778786Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5778920Z "path": "crates/spt-live/src/reconcile.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5779099Z "line": 281 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5779194Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5779298Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5779444Z "path": "crates/spt-live/src/reconcile.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5779555Z "line": 322 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5779660Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5779769Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5779917Z "path": "crates/spt-live/src/reconcile.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5780026Z "line": 360 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5780128Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5780232Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5780374Z "path": "crates/spt-store/src/contextstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5780500Z "line": 688 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5780599Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5780694Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5780838Z "path": "crates/spt-store/src/syncmerge.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5780947Z "line": 397 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5781057Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5781158Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5781304Z "path": "crates/spt-store/src/syncmerge.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5781411Z "line": 440 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5781519Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5781610Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5781707Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5781820Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5781919Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5782024Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5782144Z "id": "REQ-HAZARD-CONPTY-DSR", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5782396Z "title": "ConPTY reader must auto-answer DSR (ESC[6n) or all child output stalls (5.5)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5782515Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5782615Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5782726Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5782826Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5782934Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5783040Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5783154Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5783263Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5783365Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5783473Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5783587Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5783708Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5783802Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5783946Z "path": "crates/spt-term/src/reader.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5784055Z "line": 169 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5784268Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5784377Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5784481Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5784590Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5784701Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5784810Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5784905Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5785167Z "path": "crates/spt-term/tests/dsr.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5785283Z "line": 44 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5785378Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5785482Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5785621Z "path": "crates/spt-term/tests/dsr.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5785735Z "line": 66 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5785830Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5785931Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5786026Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5786130Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5786241Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5786350Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5786459Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5786608Z "path": "crates/spt-term/src/reader.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5786722Z "line": 186 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5786827Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5786928Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5787073Z "path": "crates/spt-term/src/reader.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5787188Z "line": 238 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5787296Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5787395Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5787539Z "path": "crates/spt-term/src/reader.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5787644Z "line": 266 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5787743Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5787849Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5787954Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5788058Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5788154Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5788259Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5788411Z "id": "REQ-HAZARD-CONTROLLER-RETAKE-FLOOR", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5792879Z "title": "`become_controller` should STRUCTURALLY refuse a controller re-take whose `from_seq` falls below the connection's already-delivered contiguous floor — making the P1c reorder invariant un-reintroducible by a future caller, not just removed at the one caller. ROOT/SCOPE (doyle proposed, P1c gate dialogue): P1c fixes REQ-HAZARD-CONTROLLER-WRITER-REORDER three ways (handoff single-take + epoch-gate-under-lock + session_cursors seed), removing the one decreasing-floor double-take and bounding any other to already-committed-only. A self-enforcing broker guard would refuse the bad SHAPE outright. BLOCKER: the obvious predicate (`from_seq >= delivered_through`) is UNSAFE because `delivered_through` is SESSION-WIDE (the `Arc` on `OutputLog`, shared by all controllers/viewers, advanced monotonic-MAX; `resume_seq` reads it) — a normal fresh-operator `from_seq=0` attach to a producing session legitimately sits below it (full ring replay + consumer dedup-below/snap-above), and monotonic-MAX can't distinguish the hazard (a `seq1`-without-`seq0` write reads as `2`). The structurally-correct guard needs a NEW per-connection contiguous-sent cursor (the true highest-contiguous seq this socket has received) that does not exist today; the guard then refuses a re-take below THAT. Bigger than P1c; no live gap (P1c fully fixes the actual bug). Mint/refine stages when the per-connection cursor is built. (v0.13.0 follow-up, post-ship)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5793037Z "requiredStages": [], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5793141Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5793252Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5793366Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5793475Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5793567Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5793666Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5793780Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5793886Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5793995Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5794100Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5794206Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5794315Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5794419Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5794625Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5794762Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5794886Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5794979Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5795074Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5795174Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5795266Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5795518Z "id": "REQ-HAZARD-CONTROLLER-WRITER-REORDER", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5810099Z "title": "Two `controller_writer` threads must never race ONE brain↔broker connection's socket. ROOT (doyle, instrumented RACEDIAG repro on kitsubito): on a brain-restart re-serve the handoff brain registers as controller on the SAME session TWICE over the SAME `Brain::conn` socket — (1) `Brain::handoff` eagerly `subscribe(prior.session_id, prior.next_seq=1)` → `become_controller(from_seq=1)`, initial=[1], spawns writer-A (writes seq 1); (2) `serve_attach` re-handles the replayed `Request{from_seq:0}` → `attach_as(sid,0)` → `become_controller(from_seq=0)`, initial=[0,1], spawns writer-B (writes 0 then 1). `become_controller` (broker.rs) drops the prior `ControllerSink` (its `tx`) but does NOT stop the prior writer thread — writer-A keeps flushing its owned `initial` batch, and both writers hold clones of the same `SharedSend` (`Arc>`) with NO inter-thread ordering. When writer-A's seq 1 wins the socket before writer-B's seq 0, the strict legacy consumer (brain.rs read_event reject-gap path) sees `output gap: got seq 1 want 0` → the test `attach_survives_target_brain_restart_exactly_once` panics at `.expect(\"re-serve\")` OR HANGS in `render_until` (serve thread died on the gap → MARKER_TWO never reaches the wire). `prior.next_seq` is life1's CONSUMPTION cursor, NOT life2's connection state — life2's socket has been sent NOTHING, so a `from_seq=0` full replay on a connection that already streamed seq 1 is contradictory. Snap-above tolerance ALONE can't fix it (it would dedup-drop the late seq 0 → byte loss → the exactly-once byte-identity assert fails). PRE-EXISTING, surfaced by the v0.13.0 green-both-runners release gate; P1b is INNOCENT (its diff touches only input-ack machinery, proven mechanically + the test passes post-P1b in isolation). Sibling flaky cluster: `inject_control_wedge::g2`, `broker::spawn_env_reaches_child`. INVARIANT: on a single brain↔broker connection the controller output-frame stream is monotonic non-decreasing in seq (modulo dedup re-sends); exactly ONE `controller_writer` is ever live per connection; a SUPERSEDED writer writes NO further frames; a re-serve never replays a seq below what the connection already received. FIX (doyle design, corrected at the gate 2026-06-20): fix #1 as designed ('drop handoff's eager subscribe so serve_attach's attach_as is the sole registration') was REVERTED — handoff's `subscribe(prior.next_seq)` IS the standalone-resume mechanism (the brain-only update engine `apply_brain_only` + the `handoff`/`idempotent`/`daemon_e2e` int tests replay output through it with NO `serve_attach`; dropping it hung every resume-via-handoff test). The shipped fix is three parts: (1) CORRECTNESS — `Brain::handoff` seeds `session_cursors` at `prior.next_seq` so the consumer runs the production dedup-below+snap-above path, never the strict reject-gap legacy trap; this is COMPLETE (not merely tolerant) because every `controller_writer` emits an ASCENDING seq stream and the surviving writer (serve_attach's attach_as(sid,0)) offers the complete `[0,end]` range, so a snap-above merge of ascending writers delivers `[K,end]` with no skip/dup (first sighting of any seq>M is preceded by M on that writer). (2) INVARIANT — `controller_writer`'s INITIAL-BATCH replay is epoch-gated: `controller_epoch` is a shared `Arc`, the writer re-reads it UNDER `send.lock()` (atomically with `write_frame`) and returns the instant it is superseded — no check-then-block-then-write window, no superseded replay (W1-safe: never blocks the drain under `Mutex`). The LIVE loop is NOT gated (new output only flows to the current controller; a superseded writer must still deliver its terminal `Displaced` kick — gating it suppressed the loud-take notice; it ends on `tx`-drop). (3) EXPLICIT-RESUME / OPERATOR-STREAM BOUNDARY (the LOAD-BEARING fix — kitsubito RACEDIAG ~33% repro the keystones missed) — `Brain::subscribe_with` (shared by attach/attach_as) resets the resume-mode dedup cursor to `from_seq`. The handoff eager subscribe makes serve_attach's brain receive the replay's seq K BEFORE the operator Request is processed (`attached`=false); that frame is dropped by the if-attached forward gate but the snap-above cursor already advanced past K, and `attach_as(sid,0)`'s re-subscribe used to leave the cursor advanced → the broker's re-send of seq K arrives below it, deduped, never forwarded → operator viewport forward-gap (silent content loss in the real rc consumer). Resetting to from_seq on the attach_as re-subscribe re-delivers from 0 (operator dedups the overlap) so seq K reaches the viewport. The epoch gate (2) is sound (RACEDIAG: zero socket interleaving above K); cold-start brains (empty map — production dispatch serve) keep the legacy next_seq path, so production is unaffected. (v0.13.0)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5810524Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5810629Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5810737Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5810827Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5810932Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5811035Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5811140Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5811255Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5811364Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5811468Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5811575Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5811721Z "path": "docs/KNOWN-HAZARDS.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5811832Z "line": 468 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5811936Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5812045Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5812142Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5812241Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5812355Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5812471Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5812575Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5812728Z "path": "crates/spt-daemon/src/brain.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5812838Z "line": 342 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5812942Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5813038Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5813195Z "path": "crates/spt-daemon/src/brain.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5813314Z "line": 1188 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5813416Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5813524Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5819724Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5819891Z "line": 763 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5819986Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5820097Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5820192Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5820301Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5820426Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5820549Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5820654Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5820818Z "path": "crates/spt-daemon/tests/attach.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5820954Z "line": 1163 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5821061Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5821156Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5821320Z "path": "crates/spt-daemon/tests/attach.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5821431Z "line": 1264 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5821548Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5821647Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5821801Z "path": "crates/spt-daemon/tests/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5821910Z "line": 1169 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5822024Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5822125Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5822224Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5822334Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5822444Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5822558Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5822663Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5822811Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5822930Z "line": 2777 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5823178Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5823283Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5823389Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5823497Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5823593Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5823689Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5823826Z "id": "REQ-HAZARD-DAEMON-HOSTED-LIVENESS", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5824413Z "title": "Daemon-hosted perches (Psyche, spt-hosted Self) derive liveness from the daemon endpoint table + info.json status, never is_process_alive(info.pid) (2.5)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5824526Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5824627Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5824737Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5824840Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5824947Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5825061Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5825165Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5825280Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5825389Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5825499Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5825605Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5825723Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5825833Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5825934Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5826105Z "path": "crates/spt-daemon/src/lifecycle.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5826216Z "line": 178 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5826333Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5826433Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5826595Z "path": "crates/spt-daemon/src/lifecycle.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5826716Z "line": 226 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5826821Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5826927Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5827069Z "path": "crates/spt-msg/src/deliver.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5827184Z "line": 79 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5827289Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5827393Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5827533Z "path": "crates/spt-msg/src/ring.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5827642Z "line": 52 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5827746Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5827857Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5828004Z "path": "crates/spt-store/src/info.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5828109Z "line": 263 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5828219Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5828333Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5828482Z "path": "crates/spt-store/src/liveness.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5828594Z "line": 27 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5828695Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5828797Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5829039Z "path": "crates/spt-store/src/liveness.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5829164Z "line": 79 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5829290Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5829391Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5829537Z "path": "crates/spt-store/src/liveness.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5829645Z "line": 102 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5829760Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5829870Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5830022Z "path": "crates/spt-store/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5830137Z "line": 116 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5830241Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5830352Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5830456Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5830570Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5830690Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5830809Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5830909Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5831072Z "path": "crates/spt-daemon/tests/daemon_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5831181Z "line": 43 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5831286Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5831397Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5831495Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5831591Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5831712Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5831819Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5831928Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5832075Z "path": "crates/spt-daemon/src/lifecycle.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5832193Z "line": 678 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5832409Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5832517Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5832666Z "path": "crates/spt-store/src/info.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5832775Z "line": 495 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5832870Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5832976Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5833233Z "path": "crates/spt-store/src/liveness.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5833352Z "line": 124 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5833452Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5833562Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5833705Z "path": "crates/spt-store/src/liveness.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5833819Z "line": 143 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5833921Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5834029Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5834173Z "path": "crates/spt-store/src/liveness.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5834278Z "line": 160 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5834386Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5834483Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5834635Z "path": "crates/spt-store/src/liveness.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5834743Z "line": 187 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5834853Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5834964Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5835105Z "path": "crates/spt-store/src/liveness.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5835211Z "line": 206 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5835321Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5835424Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5835564Z "path": "crates/spt-store/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5835668Z "line": 229 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5835778Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5835888Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5835997Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5836098Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5836203Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5836303Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5836466Z "id": "REQ-HAZARD-DAEMON-SCHED-NONBLOCKING", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5837178Z "title": "Per-agent pulse/psyche/echo-commune scheduling must not serialize across agents: each agent's bounded LLM call (echo-commune summarizer, Psyche turn) runs off the shared scheduler so one slow/hung call cannot stall another agent's tick (7.4)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5837286Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5837391Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5837501Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5837610Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5837715Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5837826Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5837948Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5838059Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5838168Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5838277Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5838388Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5838502Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5838606Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5838765Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5838869Z "line": 1222 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5839056Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5839155Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5839329Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5839442Z "line": 1476 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5839532Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5839638Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5839738Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5839846Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5839970Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5840083Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5840201Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5840301Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5840421Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5840530Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5840641Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5840792Z "path": "crates/spt-daemon/tests/shellchan.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5840912Z "line": 161 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5841017Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5841121Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5841241Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5841346Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5841450Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5841551Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5841832Z "id": "REQ-HAZARD-DAEMON-STOP-BARRIER", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5843731Z "title": "B3: `spt daemon stop` then an immediate `spt daemon start` does NOT race — stop fully completes before it returns. Today request_stop (seedmap.rs:240-255) returns on the KIND_STOPPING ack (sent seedmap.rs:174-176) BEFORE the seed socket unbinds, so a following is_running ping (daemon.rs:375) wins the exit window and start reports ALREADY_RUNNING (operator: daemon stop → STOPPED then start → ALREADY_RUNNING). FIX: unbind/stop-gate the seed socket BEFORE acking KIND_STOPPING, OR request_stop waits for a ping-to-fail before returning. Unit: stop then immediate is_running()==false. (v0.12.0)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5843950Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5844060Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5844161Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5844255Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5844355Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5844452Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5844560Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5844680Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5844786Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5844898Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5845004Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5845110Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5845218Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5845385Z "path": "crates/spt-daemon/src/seedmap.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5845495Z "line": 257 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5845590Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5845689Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5845790Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5845899Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5846019Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5846133Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5846224Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5846339Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5846458Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5846567Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5846677Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5846820Z "path": "crates/spt-daemon/src/seedmap.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5846948Z "line": 360 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5847050Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5847153Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5847249Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5847351Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5847444Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5847548Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5847691Z "id": "REQ-HAZARD-DAEMON-STOP-REAP", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5849649Z "title": "Breap: `spt daemon stop` REAPS the spt-hosted children it spawned — no orphaned psyche/harness processes. Today a stop leaves ~8 orphaned claude-spt-psyche.exe + spt.exe: Psyches are spawned DETACHED (runtime.rs:342-356, the Child is dropped — 'Detached' ~349) and the livehost stop flag Arc is NEVER raised (brainproc.rs:227-230 holds it 'for symmetry'). FIX: on stop, raise the livehost stop flag AND kill the spawned psyche/spt-hosted children — via a Windows job object / Unix process-group so the children die with the daemon (not detached-immortal). Folds with B3 (both the stop path). (v0.12.0)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5849796Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5849908Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5849997Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5850097Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5850203Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5850303Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5850420Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5850530Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5850624Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5850727Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5850828Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5850938Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5851052Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5851201Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5851301Z "line": 1018 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5851399Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5851501Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5851653Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5851763Z "line": 283 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5851968Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5852077Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5852226Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5852330Z "line": 316 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5852426Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5852522Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5852775Z "path": "crates/spt-daemon/src/reap.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5852883Z "line": 26 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5852977Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5853078Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5853187Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5853280Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5853395Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5853505Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5853599Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5853709Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5853815Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5853928Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5854034Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5854172Z "path": "crates/spt-daemon/src/reap.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5854291Z "line": 271 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5854392Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5854501Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5854634Z "path": "crates/spt-daemon/src/reap.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5854750Z "line": 348 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5854845Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5854949Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5855060Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5855158Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5855254Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5855361Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5855487Z "id": "REQ-HAZARD-DEFERRED-DRAIN", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5855694Z "title": "Deferred spool rows excluded from the event-stream drain (1.4)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5855811Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5855925Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5856026Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5856126Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5856225Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5856336Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5856459Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5856579Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5856670Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5856770Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5856894Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5856999Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5857103Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5857237Z "path": "crates/spt-store/src/spool.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5857347Z "line": 40 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5857432Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5857538Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5857680Z "path": "crates/spt-store/src/spool.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5857780Z "line": 103 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5857886Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5857981Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5858113Z "path": "crates/spt-store/src/spool.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5858223Z "line": 218 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5858322Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5858425Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5858555Z "path": "crates/spt-store/src/spool.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5858665Z "line": 323 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5858764Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5858869Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5859045Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5859136Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5859265Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5859369Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5859480Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5859589Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5859694Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5859804Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5859904Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5860047Z "path": "crates/spt-store/src/spool.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5860148Z "line": 361 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5860261Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5860361Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5860500Z "path": "crates/spt-store/src/spool.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5860614Z "line": 433 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5860830Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5860943Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5861071Z "path": "crates/spt-store/src/spool.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5861170Z "line": 496 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5861264Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5861364Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5861640Z "path": "crates/spt-store/src/spool.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5861746Z "line": 517 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5861856Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5861964Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5862071Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5862170Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5862270Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5862366Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5862518Z "id": "REQ-HAZARD-DEFERRED-MANIFEST", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5864919Z "title": "A pointer-mode (delegated / GhReleaseManaged) adapter whose binary/manifest is not yet extracted is reported with a CLEAR diagnostic, never silently dropped. Today such an adapter reads its manifest LIVE from source_dir (registry.rs manifest_dir ~146/149); a deferred / un-extracted install makes load_manifest fail → registered() (~410, filter_map(.ok())) SILENTLY DROPS the row → downstream ADAPTER_UNRESOLVED + a cryptic os-error-2 on `spt adapter use`. FIX: surface a clear diagnostic at the resolver + at `adapter use` (name the adapter + the deferred/missing-manifest cause + the fix), not a silent filter-drop and not a bare os-error-2; consider an eager manifest copy at register time so host_binaries survive before the binary download completes. doyle Finding A. (post-v0.10.0)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5865061Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5865170Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5865272Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5865357Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5865471Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5865582Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5865690Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5865795Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5865896Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5866010Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5866129Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5866245Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5866353Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5866567Z "path": "crates/spt-runtime/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5866724Z "line": 402 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5866829Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5866934Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5867086Z "path": "crates/spt-runtime/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5867202Z "line": 446 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5867302Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5867401Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5867512Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5867616Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5867740Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5867851Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5867945Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5868050Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5868165Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5868283Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5868398Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5868555Z "path": "crates/spt-runtime/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5868655Z "line": 910 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5868764Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5868872Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5869052Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5869158Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5869253Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5869352Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5869501Z "id": "REQ-HAZARD-DEFERRED-SURVIVE-DRAIN", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5869657Z "title": "Deferred rows survive poll drain (4.4)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5869773Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5869868Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5869977Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5870079Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5870192Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5870292Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5870412Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5870521Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5870621Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5870850Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5870965Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5871080Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5871179Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5871328Z "path": "crates/spt-store/src/spool.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5871432Z "line": 116 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5871640Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5871749Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5871881Z "path": "crates/spt-store/src/spool.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5871992Z "line": 211 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5872092Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5872200Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5872302Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5872392Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5872515Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5872626Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5872735Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5872830Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5872936Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5873045Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5873150Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5873294Z "path": "crates/spt-store/src/spool.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5873402Z "line": 388 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5873507Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5873599Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5873736Z "path": "crates/spt-store/src/spool.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5873861Z "line": 469 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5873966Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5874069Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5874169Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5874269Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5874363Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5874462Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5874602Z "id": "REQ-HAZARD-DETACHED-PIPE-INHERIT", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5875778Z "title": "Windows detached long-lived children must not inherit a captured caller's pipe: every detach-spawn of an immortal child (daemon, shell binary) runs bInheritHandles=FALSE, or a caller capturing output anywhere up the process chain hangs forever on a pipe that never EOFs — std-handle flag stripping is NOT sufficient (grandparent strays still flow) (5.6)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5875908Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5876003Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5876108Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5876218Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5876323Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5876443Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5876547Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5876647Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5876743Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5876885Z "path": "docs/KNOWN-HAZARDS.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5877003Z "line": 206 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5877103Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5877200Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5877293Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5877404Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5877508Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5877617Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5877719Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5877862Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5877975Z "line": 691 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5878077Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5878180Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5878324Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5878439Z "line": 791 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5878548Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5878648Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5878791Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5878905Z "line": 1120 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5879097Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5879186Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5879343Z "path": "crates/spt-daemon/src/shellhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5879451Z "line": 184 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5879556Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5879670Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5879757Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5879851Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5879965Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5880232Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5880334Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5880429Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5880542Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5880648Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5880753Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5880885Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5881096Z "line": 1169 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5881205Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5881311Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5881472Z "path": "crates/spt/tests/notify_shell_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5881573Z "line": 44 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5881672Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5881773Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5881932Z "path": "crates/spt/tests/shell_actgate_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5882039Z "line": 52 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5882129Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5882225Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5882360Z "path": "crates/spt/tests/shell_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5882484Z "line": 57 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5882590Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5882699Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5882862Z "path": "crates/spt/tests/shell_sleepwake_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5882962Z "line": 54 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5883080Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5883177Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5883281Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5883376Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5883472Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5883577Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5883724Z "id": "REQ-HAZARD-DIRECT-WRITE-PRECEDENCE", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5883972Z "title": "Direct-write precedence marker (with node id) guards stale overwrite (6.5)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5884082Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5884187Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5884291Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5884397Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5884507Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5884606Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5884734Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5884843Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5884956Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5885065Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5885181Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5885294Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5885399Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5885553Z "path": "crates/spt-live/src/context.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5885656Z "line": 26 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5885767Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5885867Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5886005Z "path": "crates/spt-live/src/context.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5886124Z "line": 135 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5886229Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5886339Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5886487Z "path": "crates/spt-store/src/contextmark.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5886587Z "line": 26 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5886688Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5886801Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5886959Z "path": "crates/spt-store/src/contextmark.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5887069Z "line": 237 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5887168Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5887254Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5887355Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5887459Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5887582Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5887697Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5887793Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5887896Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5888012Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5888117Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5888225Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5888365Z "path": "crates/spt-live/src/context.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5888469Z "line": 161 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5888564Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5888665Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5888808Z "path": "crates/spt-live/src/context.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5889074Z "line": 170 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5889174Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5889271Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5889417Z "path": "crates/spt-live/src/context.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5889532Z "line": 179 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5889643Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5889840Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5889989Z "path": "crates/spt-live/src/context.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5890106Z "line": 190 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5890211Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5890312Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5890444Z "path": "crates/spt-live/src/context.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5890554Z "line": 199 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5890660Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5890764Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5890903Z "path": "crates/spt-live/src/context.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5891003Z "line": 216 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5891102Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5891208Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5891350Z "path": "crates/spt-live/src/context.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5891470Z "line": 242 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5891575Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5891670Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5891809Z "path": "crates/spt-live/src/ingest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5891932Z "line": 295 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5892032Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5892133Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5892261Z "path": "crates/spt-live/src/signoff.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5892371Z "line": 244 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5892482Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5892580Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5892742Z "path": "crates/spt-store/src/contextmark.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5892837Z "line": 265 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5892944Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5893044Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5893203Z "path": "crates/spt-store/src/contextmark.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5893330Z "line": 293 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5893417Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5893517Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5893669Z "path": "crates/spt-store/src/contextmark.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5893780Z "line": 317 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5893884Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5893998Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5894151Z "path": "crates/spt-store/src/contextmark.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5894256Z "line": 327 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5894361Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5894466Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5894618Z "path": "crates/spt-store/src/syncmerge.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5894710Z "line": 540 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5894823Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5894928Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5895035Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5895142Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5895232Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5895327Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5895473Z "id": "REQ-HAZARD-DRIVEN-BY-IDLE-REMOTE-EVICT", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5900497Z "title": "An spt-hosted endpoint driven by a REMOTE controller whose remote is gone but whose broker connection stays OPEN (a wedged/lost pump that never delivers the detach) AND whose session is IDLE (no output) stays latched ONLINE+CONTROLLED forever: the W1 drain-evict only fires on OUTPUT (CONTROLLER_WRITE_DEADLINE on a backed-up write), a clean disconnect self-heals via detach_if→clear_controller, but an idle session with a half-open/wedged controller connection produces neither signal. PROVED repro-first on a real broker (v0.13.0 W5, inject_control_wedge.rs w5_a2): controller_by STAYS Some(origin) and driven_by STAYS Some after the remote is abandoned without a clean EOF on an idle session — so the brain reconcile CANNOT detect it from KIND_SESSIONS controller_by (the broker still reports it controlled). FIX DIRECTION (doyle ruling 2026-06-19, broker-side single-writer — the broker owns driven_by/clear_controller): wire the EXISTING D4c NetPresence connection-disconnect event → clear_controller for any session whose controller identity == the dead origin (become_controller already stores Some(origin); presence events already exist — modest wiring, NOT a new probe). The liveness ORACLE is QUIC's own keepalive/idle-timeout: a presence-disconnect IS a real QUIC conn close, already tolerant of transient blips within the keepalive window, so NO heavy partition ADR is needed UNLESS the QUIC timeout proves too slow for the UX (then mint an ADR for a faster controller-heartbeat + its false-evict bound). Composes with W1 (output path) + W5 Gap B (no-session) — this is the third, idle-remote, leg. (v0.13.0 follow-up)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5900867Z "requiredStages": [], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5900975Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5901086Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5901195Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5901314Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5901411Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5901506Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5901619Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5901735Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5901834Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5901939Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5902045Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5902154Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5902263Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5902355Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5902464Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5902573Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5902675Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5902775Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5902874Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5902980Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5903113Z "id": "REQ-HAZARD-DRIVEN-BY-SELFHEAL", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5904720Z "title": "An spt-hosted endpoint's ONLINE+CONTROLLED state (`driven_by`) must CLEAR even when the detach IPC is lost — do NOT rely on the detach signal (same lesson as REQ-HAZARD-HOSTED-LIVENESS-RECONCILE B2): the reconcile loop clears `driven_by` when the endpoint has no live controller/session. Today a wedged or lost pump never delivers the detach, so the endpoint stays latched CONTROLLED forever. Composes with W1 (the wedge no longer blocks the detach) and rides the same pull-primary reconcile substrate as B2. (v0.13.0)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5904849Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5904960Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5905064Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5905159Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5905246Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5905355Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5905455Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5905575Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5905679Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5905774Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5905878Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5906001Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5906109Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5906214Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5906367Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5906471Z "line": 538 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5906582Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5906687Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5906834Z "path": "crates/spt-daemon/src/msg.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5906939Z "line": 625 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5907034Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5907140Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5907316Z "path": "crates/spt-daemon/tests/driven_by_selfheal.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5907425Z "line": 21 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5907532Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5907631Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5907731Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5907837Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5907959Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5908069Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5908171Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5908341Z "path": "crates/spt-daemon/tests/driven_by_selfheal.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5908452Z "line": 236 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5908636Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5908740Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5908903Z "path": "crates/spt-daemon/tests/driven_by_selfheal.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5909079Z "line": 396 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5909194Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5909294Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5909975Z "path": "crates/spt-daemon/tests/inject_control_wedge.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5910100Z "line": 1496 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5910204Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5910314Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5910486Z "path": "crates/spt-daemon/tests/inject_control_wedge.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5910600Z "line": 1648 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5914455Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5914604Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5914718Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5914828Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5914947Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5915056Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5915162Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5915338Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5915447Z "line": 887 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5915558Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5915657Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5915758Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5915864Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5915986Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5916097Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5916244Z "id": "REQ-HAZARD-DROP-FILE-SINGLE-WRITER", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5916429Z "title": "Drop files are daemon-owned single-writer (6.4)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5916547Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5916660Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5916765Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5916866Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5916979Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5917075Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5917190Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5917294Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5917404Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5917509Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5917632Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5917734Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5917824Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5917971Z "path": "crates/spt-live/src/echo.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5918078Z "line": 25 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5918196Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5918291Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5918439Z "path": "crates/spt-live/src/ingest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5918548Z "line": 26 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5918649Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5918754Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5918896Z "path": "crates/spt-live/src/ingest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5919097Z "line": 159 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5919201Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5919319Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5919416Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5919525Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5919649Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5919759Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5919863Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5919969Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5920083Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5920192Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5920288Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5920436Z "path": "crates/spt-live/src/echo.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5920540Z "line": 188 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5920651Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5920750Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5920879Z "path": "crates/spt-live/src/echo.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5920980Z "line": 240 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5921084Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5921189Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5921328Z "path": "crates/spt-live/src/ingest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5921441Z "line": 186 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5921536Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5921645Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5921744Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5921848Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5921954Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5922201Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5922335Z "id": "REQ-HAZARD-EBUSY-RENAME", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5922531Z "title": "tmp-write + atomic-rename + retry on Windows EBUSY (5.2)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5922654Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5922749Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5922941Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5923050Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5923155Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5923269Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5923374Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5923495Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5923603Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5923699Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5923810Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5923909Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5924018Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5924157Z "path": "crates/spt-store/src/atomic.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5924275Z "line": 48 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5924384Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5924493Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5924639Z "path": "crates/spt-store/src/atomic.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5924734Z "line": 55 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5924845Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5924949Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5925098Z "path": "crates/spt-store/src/atomic.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5925207Z "line": 74 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5925306Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5925412Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5925556Z "path": "crates/spt-store/src/atomic.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5925669Z "line": 91 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5925765Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5925864Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5925964Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5926066Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5926188Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5926303Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5926400Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5926494Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5926618Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5926729Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5926832Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5926979Z "path": "crates/spt-store/src/atomic.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5927075Z "line": 149 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5927173Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5927281Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5927421Z "path": "crates/spt-store/src/atomic.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5927534Z "line": 166 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5927635Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5927740Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5927863Z "path": "crates/spt-store/src/atomic.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5927974Z "line": 176 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5928074Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5928183Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5928318Z "path": "crates/spt-store/src/atomic.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5928417Z "line": 194 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5928517Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5928628Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5928775Z "path": "crates/spt-store/src/atomic.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5928875Z "line": 207 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5929046Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5929141Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5929238Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5929352Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5929456Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5929563Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5929699Z "id": "REQ-HAZARD-ECHO-BEFORE-SIGNOFF", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5929918Z "title": "Echo-commune fires before INIT_SIGNOFF on orphan teardown (3.3)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5930037Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5930128Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5930238Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5930329Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5930438Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5930544Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5930658Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5930762Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5930858Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5931086Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5931192Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5931306Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5931406Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5931559Z "path": "crates/spt-daemon/src/lifecycle.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5931668Z "line": 466 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5931865Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5931978Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5932110Z "path": "crates/spt-live/src/signoff.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5932219Z "line": 26 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5932313Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5932418Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5932524Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5932633Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5932752Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5932858Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5932961Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5933062Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5933186Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5933295Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5933401Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5933548Z "path": "crates/spt-live/src/signoff.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5933657Z "line": 150 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5933764Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5933868Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5933996Z "path": "crates/spt-live/src/signoff.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5934102Z "line": 208 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5934211Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5934316Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5934412Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5934521Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5934616Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5934704Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5934854Z "id": "REQ-HAZARD-EFFECT-JOURNAL-PTY-WEDGE", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5944452Z "title": "The effect journal serializes EVERY PTY effect under one mutex held ACROSS two fsyncs AND the blocking PTY write — so interactive input stutters and ultimately wedges the daemon hard. ROOT (doyle /diagnose, code-grounded + MEASURED on the operator's real Windows box, 2026-06-19): EffectJournal::apply_once (effect.rs:168-188) takes `inner.lock()` and holds it across `write_line(PENDING)` → `effect()` → `write_line(DONE)`, where write_line (effect.rs:235-239) does flush()+sync_all() (a full FlushFileBuffers) — so each effect pays TWO fsyncs under a GLOBAL lock, and the closure `effect()` (the actual PTY write, broker.rs:1257 EffectKind::PtyWrite via attach.rs:197 send_effect) runs while the lock is held. Two operator-visible facets, ONE root: (A) STUTTER/LAG — every keystroke is a PtyWrite effect = 2× sync_all serialized; measured fsync on %LOCALAPPDATA%\\spt-core = median 6.5ms, spikes to 198ms (C: was recently at 100%), so ~13ms+ per keystroke best case, hundreds under contention → 'many but not all keypresses take 100s of ms, choppy, worsens with volume'. (B) HARD PERMANENT WEDGE — when a PtyWrite `effect()` blocks (ConPTY input buffer full / harness not draining stdin), the journal lock is held INDEFINITELY → the single-threaded inbound-stream dispatch (dispatch.rs serve_attach, which both applies input effects AND opens attaches) can never progress → EVERY subsequent attach (`spt rc --view`/`--take`) fails with 'attach request: brain IPC read deadline elapsed' (confirmed: two retries deadline identically; broker control-plane KIND queries still answer — different thread). This REFUTES the W2-deferred ruling that park-(b)/(c) is 'Windows-benign because ConPTY absorbs 4MiB' — on the real box the input path wedges regardless. DISTINCT from W1 (REQ-HAZARD-INJECT-CONTROL-COEXIST = the OUTPUT drain, correctly fixed @8b5583e; output uses broker.rs:1106 append, NOT the fsync journal). This is the INPUT/effect-journal path W1 never touched, and it is THE wedge the operator hits with --take/--view. FIX DIRECTION (candidates, repro-first — extend inject_control_wedge.rs to a REAL backed-up-PTY-consumer + a real rc-client attach assertion, the gap W1's gate missed): (1) do NOT hold the journal lock across effect() — reserve the key + fsync PENDING under lock, RELEASE, run effect(), re-acquire to fsync DONE + mark applied (preserve crash-idempotency via the per-key reservation, not a global hold); (2) bound/fail-fast the PtyWrite itself (the W2-deferred park bound — write_input must never block indefinitely, DSR-answer must not hold the writer mutex across a blocking write); (3) drop per-keystroke fsync on the interactive path — PtyWrite effects are EPHEMERAL (a keystroke lost on a broker crash is retyped; PTY state is not reconstructed from keystroke replay), so in-memory applied-set dedup suffices (the broker survives the brain — that IS the dedup anchor), with async/batched fsync or no-fsync for EffectKind::PtyWrite while durable kinds (NetSend/NetDial/Registry/Spool) keep their fsync. Combine (1)+(3) at minimum. Add a KNOWN-HAZARDS.md entry on landing. (v0.13.0)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5944852Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5944959Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5945066Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5945167Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5945273Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5945381Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5945480Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5945605Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5945717Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5945806Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5945903Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5946022Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5946140Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5946246Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5946408Z "path": "crates/spt-daemon/src/effect.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5946566Z "line": 99 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5946722Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5946890Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5947033Z "path": "crates/spt-daemon/src/effect.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5947142Z "line": 201 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5947243Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5947347Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5947457Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5947558Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5947676Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5947777Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5947882Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5948061Z "path": "crates/spt-daemon/tests/inject_control_wedge.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5948176Z "line": 737 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5948284Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5948378Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5948479Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5948580Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5948707Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5948818Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5948923Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5949161Z "path": "crates/spt-daemon/src/effect.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5949285Z "line": 517 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5949405Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5949505Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5949656Z "path": "crates/spt-daemon/src/effect.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5949772Z "line": 576 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5949876Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5949990Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5950091Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5950199Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5950300Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5950402Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5950543Z "id": "REQ-HAZARD-ELEVATED-DAEMON-SPAWN", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5951930Z "title": "The daemon always runs unelevated in the invoking user's universe, regardless of which command spawns it: an elevated spawner de-elevates (Windows: UAC linked token via CreateProcessWithTokenW; Linux: drop to SUDO_UID/SUDO_GID + the invoker's HOME) — an elevated daemon's pipes deny unelevated clients (every later spt reads not-running→spawn→bind Access-denied) and a sudo'd daemon roots the user's state universe (5.7)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5952059Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5952159Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5952269Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5952365Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5952464Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5952574Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5952807Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5952918Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5953023Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5953131Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5953274Z "path": "docs/KNOWN-HAZARDS.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5953372Z "line": 214 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5953601Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5953696Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5953800Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5953901Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5954021Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5954129Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5954221Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5954377Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5954482Z "line": 56 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5954597Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5954702Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5954840Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5954954Z "line": 580 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5955074Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5955175Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5955316Z "path": "crates/spt-daemon/src/deelevate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5955422Z "line": 36 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5955524Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5955631Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5955790Z "path": "crates/spt-daemon/src/deelevate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5955890Z "line": 59 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5955993Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5956093Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5956244Z "path": "crates/spt-daemon/src/deelevate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5956353Z "line": 83 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5956463Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5956554Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5956696Z "path": "crates/spt-daemon/src/deelevate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5956816Z "line": 140 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5956911Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5957020Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5957159Z "path": "crates/spt-daemon/src/deelevate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5957268Z "line": 159 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5957374Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5957479Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5957636Z "path": "crates/spt-daemon/src/deelevate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5957737Z "line": 384 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5957845Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5957946Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5958090Z "path": "crates/spt-daemon/src/deelevate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5958208Z "line": 535 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5958308Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5958419Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5958555Z "path": "crates/spt-daemon/src/deelevate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5958659Z "line": 581 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5958750Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5958848Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5959068Z "path": "crates/spt/src/elevation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5959173Z "line": 300 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5959315Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5959426Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5959558Z "path": "crates/spt/src/main.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5959655Z "line": 42 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5959759Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5959868Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5959975Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5960083Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5960202Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5960308Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5960398Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5960498Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5960623Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5960727Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5960841Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5960990Z "path": "crates/spt-daemon/src/deelevate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5961098Z "line": 813 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5961200Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5961305Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5961455Z "path": "crates/spt-daemon/src/deelevate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5961666Z "line": 854 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5961779Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5961875Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5962019Z "path": "crates/spt-daemon/src/deelevate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5962137Z "line": 928 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5962343Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5962442Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5962539Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5962643Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5962738Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5962849Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5963005Z "id": "REQ-HAZARD-ENDPOINT-RUN-ATTACH-OUTPUT", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5968081Z "title": "A clean `spt rc` attach to a LIVE spt-hosted (`endpoint run`) harness must DELIVER the harness's PTY output. KEYSTONE — the operator's central 'attach shows no output' symptom, reproduced on the real dummy-harness fixture (v0.12.1 Wave 1) with NO death and NO wedge: bringup succeeds (online, harness pid alive + heartbeating, psyche hosted), the attach CONNECTS (PUMP_IPC_READER spawned, no RC_FAIL, holds the full window) — but receives EXACTLY 0 bytes over 10s of the harness's flushed [session.self] stdout. DISTINCT from REQ-HAZARD-VIEWER-CLOSE-DETACH (death) and REQ-HAZARD-ATTACH-WEDGE (dead-child backpressure): here the harness is ALIVE and the attach is a clean first subscribe. This BLOCKS the 'view is independent' invariant — re-attach is meaningless if a live endpoint-run harness shows nothing. KNOWN-GOOD (rules out 'no drain'): attach.rs `local_attach_via_loopback_conn_rides_the_same_pump` + `broker_spawns_the_pty_child_in_the_requested_cwd` prove the broker DOES drain+fan a `spawn_session` PTY child to a loopback attach over the SAME transport rc uses. Both spawn_session and endpoint-run's spawn_session_pid send KIND_SPAWN → the same dispatch_spawn (broker.rs:706/835) which starts the per-session drain+OutputLog — so the gap is NARROWER than 'no drain', endpoint-run-specific. Root candidates: (a) spawn_session_pid's SpawnReq stdio/env/cwd differs so the dummy's stdout isn't the captured ConPTY; (b) the harness stdout WRITE BLOCKS because the ConPTY buffer fills (drain not reading THIS pty) — explains alive-but-0-bytes; (c) ConPTY reader-park (KH 7.6) on this path; (d) `spt rc` resolve_session/subscribe for an endpoint-run session subscribes to the wrong/empty log. (v0.12.1)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5968234Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5968344Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5968467Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5968558Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5968659Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5968768Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5968883Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5969054Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5969172Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5969277Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5969376Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5969489Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5969595Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5969700Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5969857Z "path": "crates/spt-daemon/src/attach.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5969977Z "line": 106 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5970071Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5970161Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5970272Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5970377Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5970496Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5970596Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5970696Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5970854Z "path": "crates/spt/tests/dummy_harness_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5970963Z "line": 296 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5971068Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5971169Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5971277Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5971373Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5971484Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5971592Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5971693Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5971851Z "path": "crates/spt-daemon/tests/attach.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5972068Z "line": 464 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5972183Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5972288Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5972392Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5972498Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5972593Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5972692Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5972817Z "id": "REQ-HAZARD-ENV-SUBST", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5976399Z "title": "`spt endpoint run` HONORS manifest [env.] direction=inject values (with {key} substitution) on the spt-hosted spawn. Today only the [session.self] command ARGV is {id}-substituted; the [env] inject value is NEITHER substituted NOR applied — manifest.schema.json promises EnvVar.value = 'Value to inject (with substitution)' but prepare_harness_spawn fills only argv and SpawnReq carries no env, so a [env.SPT_ENDPOINT_ID].value='{id}' arrives EMPTY. A FLAGLESS harness (bare `claude`, no argv slot for {id}) then routes the id via [env] → empty → SessionStart sees empty $SPT_ENDPOINT_ID → seeds-by-PPID instead of binding → ZERO perch → NO_PERCH (the actual wall-b bind blocker; perri hard-repro'd). SILENT failure (empty inject, no error). FIX (doyle ruled a): fill every [env] inject value from the SAME {key} catalog as argv/role (mirror F-009 TEMPLATE fill, whole-string fill_template for an env value), thread it through SpawnReq.env → the broker sets it on the spawned PTY child. Correctness fix — schema already promises it, NO manifest change, NO new binary. PAIRS with REQ-SEND-SPT-HOSTED to make endpoint run fully work. doyle F-013. (post-v0.10.0)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5976547Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5976658Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5976751Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5976867Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5976963Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5977071Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5977170Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5977294Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5977411Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5977515Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5977627Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5977735Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5977845Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5977941Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5978097Z "path": "crates/spt-daemon/src/harnesshost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5978203Z "line": 123 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5978317Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5978426Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5978557Z "path": "crates/spt-term/src/pty.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5978670Z "line": 134 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5978775Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5978872Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5979046Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5979138Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5979271Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5979390Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5979496Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5979633Z "path": "crates/spt-daemon/tests/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5979756Z "line": 312 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5979866Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5979968Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5980116Z "path": "crates/spt-daemon/tests/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5980217Z "line": 525 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5980317Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5980402Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5980513Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5980617Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5980726Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5980836Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5980927Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5981090Z "path": "crates/spt-daemon/src/harnesshost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5981199Z "line": 250 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5981303Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5981409Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5981514Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5981618Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5981719Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5981814Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5981952Z "id": "REQ-HAZARD-ENVELOPE-CR-LINESAFE", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5983759Z "title": "Envelope CR-linesafety (4.1): the line-framed EVENT codec must neutralize raw carriage returns — `event_body_escape` folds CRLF/lone-CR to the codec's representable linebreak (`\\n`→`
`) BEFORE framing, so a body carrying `\\r` (Windows `echo`/CRLF text crossing nodes) cannot survive into the single-line envelope and trigger a receiver terminal CR→col0 overwrite that corrupts the frame. Robustness on unrepresentable input, NOT a wire-format change (decoder untouched, amp-last invariant held). Belt-and-suspenders: `spt send`/`ring` also trim stdin (parity with `notify`).", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5984083Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5984187Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5984294Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5984388Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5984493Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5984603Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5984708Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5984830Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5984935Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5985044Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5985152Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5985252Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5985363Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5985514Z "path": "crates/spt-proto/src/envelope.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5985630Z "line": 31 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5985734Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5985833Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5985935Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5986035Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5986148Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5986249Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5986354Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5986448Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5986564Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5986678Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5986787Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5986931Z "path": "crates/spt-proto/src/envelope.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5987031Z "line": 181 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5987136Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5987232Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5987335Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5987446Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5987542Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5987636Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5987773Z "id": "REQ-HAZARD-ENVELOPE-DECODE-ORDER", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5987962Z "title": "Envelope decode order, ampersand decoded last (4.1)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5988085Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5988192Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5988291Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5988386Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5988497Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5988606Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5988729Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5988835Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5988935Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5989092Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5989201Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5989330Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5989432Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5989583Z "path": "crates/spt-proto/src/envelope.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5989678Z "line": 49 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5989780Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5989883Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5990028Z "path": "crates/spt-proto/src/envelope.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5990142Z "line": 81 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5990240Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5990340Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5990445Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5990548Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5990657Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5990763Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5990862Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5990962Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5991068Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5991177Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5991296Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5991435Z "path": "crates/spt-proto/src/envelope.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5991544Z "line": 156 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5991778Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5991878Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5992031Z "path": "crates/spt-proto/src/envelope.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5992140Z "line": 173 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5992245Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5992342Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5992585Z "path": "crates/spt-proto/src/envelope.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5992694Z "line": 196 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5992803Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5992904Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5992999Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5993103Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5993207Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5993308Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5993465Z "id": "REQ-HAZARD-ENVELOPE-PARSER-SAFE", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5993666Z "title": "Two-slice envelope parser is panic-free and tolerant (4.2)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5993784Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5993880Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5993990Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5994099Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5994204Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5994314Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5994428Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5994544Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5994643Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5994748Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5994878Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5994986Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5995081Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5995225Z "path": "crates/spt-proto/src/envelope.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5995334Z "line": 120 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5995438Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5995547Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5995655Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5995764Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5995880Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5995989Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5996089Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5996199Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5996318Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5996437Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5996538Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5996675Z "path": "crates/spt-proto/src/envelope.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5996786Z "line": 212 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5996890Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5996990Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5997143Z "path": "crates/spt-proto/src/envelope.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5997248Z "line": 221 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5997342Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5997439Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5997581Z "path": "crates/spt-proto/src/envelope.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5997691Z "line": 229 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5997797Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5997900Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5998045Z "path": "crates/spt-proto/src/envelope.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5998140Z "line": 239 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5998238Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5998333Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5998480Z "path": "crates/spt-proto/src/envelope.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5998579Z "line": 249 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5998694Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5998789Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5998884Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5999057Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5999162Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5999766Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.5999958Z "id": "REQ-HAZARD-EPHEMERAL-CLEANUP", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6000224Z "title": "Ephemeral perch cleanup on every ring exit path (3.1)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6000364Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6000491Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6000621Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6000739Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6000871Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6000996Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6001132Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6001270Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6001385Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6001508Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6001990Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6002123Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6002244Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6002423Z "path": "crates/spt-msg/src/ring.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6002568Z "line": 14 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6002691Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6002939Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6003106Z "path": "crates/spt-msg/src/ring.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6003236Z "line": 63 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6003363Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6003488Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6003602Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6003720Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6003868Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6004006Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6004135Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6004259Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6004387Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6004526Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6004644Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6004827Z "path": "crates/spt-msg/src/ring.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6004950Z "line": 164 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6005074Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6005189Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6005365Z "path": "crates/spt-msg/src/ring.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6005508Z "line": 198 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6005632Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6005753Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6005913Z "path": "crates/spt-msg/src/ring.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6006045Z "line": 220 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6006173Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6006300Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6006425Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6006539Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6006658Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6006779Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6006944Z "id": "REQ-HAZARD-EPOCH-RESET", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6008889Z "title": "Advertisement-epoch reset strands a node: peers' higher last-seen epoch drops the reset node's fresh advertisements as Stale until the counter outruns history. Common case (full reinstall/re-pair) is mitigated by REQ-SUBNET-7's ceremony eviction (peer-side epoch memory dies with the deleted row — acceptance-verified); the residual narrow slice (epoch file lost, identity kept) is documented, guard deferred to a field hit (4.11)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6009148Z "requiredStages": [], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6009282Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6009411Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6009554Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6009688Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6009797Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6009965Z "path": "docs/KNOWN-HAZARDS.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6010102Z "line": 165 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6010232Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6010350Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6010465Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6010594Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6010732Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6010881Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6011003Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6011133Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6011258Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6011394Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6011527Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6011654Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6011802Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6011917Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6012011Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6012116Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6012226Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6012325Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6012465Z "id": "REQ-HAZARD-EVENTPART-REASSEMBLY", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6012712Z "title": "EVENT-PART split/reassembly is byte-exact; orphan parts dropped silently", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6012832Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6012932Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6013036Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6013147Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6013252Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6013457Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6013575Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6013676Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6013782Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6013884Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6013995Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6014101Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6014299Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6014452Z "path": "crates/spt-proto/src/chunk.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6014566Z "line": 76 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6014671Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6014767Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6014909Z "path": "crates/spt-proto/src/chunk.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6015015Z "line": 167 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6015119Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6015224Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6015363Z "path": "crates/spt-proto/src/chunk.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6019363Z "line": 233 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6019492Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6019619Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6019790Z "path": "crates/spt-proto/src/chunk.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6019905Z "line": 272 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6020005Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6020100Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6020206Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6020310Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6020439Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6020544Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6020648Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6020758Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6020854Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6020968Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6021073Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6021225Z "path": "crates/spt-proto/src/chunk.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6021330Z "line": 321 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6021432Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6021526Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6021669Z "path": "crates/spt-proto/src/chunk.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6021789Z "line": 329 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6021892Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6022001Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6022149Z "path": "crates/spt-proto/src/chunk.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6022252Z "line": 356 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6022352Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6022462Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6022604Z "path": "crates/spt-proto/src/chunk.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6022715Z "line": 395 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6022820Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6022924Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6023059Z "path": "crates/spt-proto/src/chunk.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6023168Z "line": 406 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6023272Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6023378Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6023511Z "path": "crates/spt-proto/src/chunk.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6023615Z "line": 418 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6023717Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6023802Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6023955Z "path": "crates/spt-proto/src/chunk.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6024064Z "line": 442 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6024169Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6024275Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6024379Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6024469Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6024575Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6024676Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6024802Z "id": "REQ-HAZARD-GEN-START-NOW", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6024984Z "title": "gen_start = now() on cold-start and handoff (2.4)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6025088Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6025183Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6025289Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6025394Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6025503Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6025609Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6025723Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6025827Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6025928Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6026032Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6026276Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6026390Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6026495Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6026638Z "path": "crates/spt-daemon/src/brain.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6026742Z "line": 22 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6026848Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6027052Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6027152Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6027261Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6027364Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6027478Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6027574Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6027731Z "path": "crates/spt-daemon/tests/handoff.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6027841Z "line": 18 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6027946Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6028041Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6028127Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6028232Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6028346Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6028447Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6028561Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6028651Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6028752Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6028847Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6029081Z "id": "REQ-HAZARD-GRACE-BEFORE-SIGNOFF", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6029319Z "title": "Grace-period wait completes before composing INIT_SIGNOFF (1.1)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6029445Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6029552Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6029653Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6029754Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6029853Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6029956Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6030071Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6030179Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6030288Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6030384Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6030494Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6030598Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6030709Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6030851Z "path": "crates/spt-daemon/src/lifecycle.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6030965Z "line": 465 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6031066Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6031161Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6031304Z "path": "crates/spt-live/src/signoff.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6031395Z "line": 27 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6031500Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6031599Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6031705Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6031800Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6031895Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6031997Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6032100Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6032205Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6032312Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6032424Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6032528Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6032671Z "path": "crates/spt-daemon/src/lifecycle.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6032784Z "line": 990 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6032878Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6032984Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6033122Z "path": "crates/spt-live/src/signoff.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6033226Z "line": 181 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6033323Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6033413Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6033518Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6033628Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6033733Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6033832Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6033966Z "id": "REQ-HAZARD-HANDOFF-ARGV-COMPAT", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6034147Z "title": "Broker/brain IPC + handoff argv version-tolerant (2.3)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6034258Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6034367Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6034471Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6034577Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6034671Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6034772Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6034883Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6034986Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6035091Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6035301Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6035419Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6035515Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6035616Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6035772Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6035869Z "line": 73 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6036072Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6036169Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6036316Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6036425Z "line": 972 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6036531Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6036631Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6036798Z "path": "crates/spt-daemon/src/frame.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6036916Z "line": 20 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6036997Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6037103Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6037240Z "path": "crates/spt-daemon/src/frame.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6037351Z "line": 100 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6037466Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6037569Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6037712Z "path": "crates/spt-daemon/src/msg.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6037812Z "line": 603 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6037919Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6038024Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6038182Z "path": "crates/spt-daemon/src/transport.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6038291Z "line": 68 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6038391Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6038482Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6038625Z "path": "crates/spt-daemon/src/transport.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6038741Z "line": 80 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6038845Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6039017Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6039126Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6039220Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6039341Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6039450Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6039555Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6039699Z "path": "crates/spt/tests/n1_pairing.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6039817Z "line": 44 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6039927Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6040019Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6040117Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6040223Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6040338Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6040455Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6040559Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6040711Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6040815Z "line": 1181 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6040915Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6041021Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6041172Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6041283Z "line": 1197 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6041383Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6041487Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6041631Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6041740Z "line": 2399 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6041850Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6041946Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6042083Z "path": "crates/spt-daemon/src/frame.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6042184Z "line": 152 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6042279Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6042374Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6042523Z "path": "crates/spt-daemon/src/frame.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6042632Z "line": 175 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6042737Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6042847Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6042980Z "path": "crates/spt-daemon/src/frame.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6043088Z "line": 186 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6043189Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6043297Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6043429Z "path": "crates/spt-daemon/src/frame.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6043534Z "line": 202 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6043635Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6043729Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6044006Z "path": "crates/spt-daemon/src/frame.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6044116Z "line": 216 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6044212Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6044312Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6044465Z "path": "crates/spt-daemon/src/transport.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6044674Z "line": 137 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6044765Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6044860Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6044984Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6045095Z "line": 8152 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6045198Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6045308Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6045447Z "path": "crates/spt/tests/n1_compat.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6045546Z "line": 30 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6045646Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6045753Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6045894Z "path": "crates/spt/tests/n1_compat.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6046003Z "line": 73 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6046109Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6046213Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6046298Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6046404Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6046505Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6046608Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6046762Z "id": "REQ-HAZARD-HOSTED-LIVENESS-RECONCILE", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6051105Z "title": "B2 KEYSTONE: a daemon-hosted (spt-hosted) endpoint's info.json status is RECONCILED to real liveness, not left latched online. The broker exit-waiter (broker.rs:889-910) reaps its in-mem session table + emits ExitEvent but NEVER touches info.json; lifecycle::mark_offline only fires on Psyche teardown — so a dead/exited harness (operator closed the tab) stays status=online forever (is_perch_alive returns ONLINE for daemon-hosted, liveness.rs:80-93). FIX (doyle ruled PULL-PRIMARY — the live-status analog of REQ-HAZARD-ROSTER-GHOST): the livehost reconcile loop (reconcile_once livehost.rs:226-313) queries the broker's live session set (KIND_SESSIONS) each tick and, for any status=online live_agent perch PAST the boot grace whose endpoint has NO live broker session, marks it offline (lifecycle::mark_offline → status=offline → is_perch_alive=false). GATED on spt-hosted (controllable==Some(true)) so a HARNESS-HOSTED relay live agent (api listen, legitimately online with no broker session) is NEVER mis-marked. Crash-robust + self-healing on the next tick (clear-on-event is not crash-robust alone). PUSH (brain ExitEvent→mark_offline) is an OPTIONAL fast-path only if the daemon brain is reliably subscribed to all hosted sessions; correctness rides the pull. Broker stays stateless (ADR-0004 §B — brain owns the info.json write). (v0.12.0)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6051244Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6051342Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6051441Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6051543Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6051647Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6051747Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6051858Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6051985Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6052090Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6052187Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6052282Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6052400Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6052511Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6052624Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6052778Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6052877Z "line": 510 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6052987Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6053083Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6053239Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6053340Z "line": 704 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6053446Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6053540Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6053634Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6053739Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6053843Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6053947Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6054047Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6054303Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6054414Z "line": 1119 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6054515Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6054623Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6054777Z "path": "crates/spt/tests/attach_wedge_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6054977Z "line": 312 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6055063Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6055153Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6055262Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6055364Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6055473Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6055582Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6055684Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6055825Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6055931Z "line": 821 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6056036Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6056140Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6056246Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6056332Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6056444Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6056544Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6056664Z "id": "REQ-HAZARD-ID-CHARSET", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6056936Z "title": "Addressable-id charset reserves :/@ delimiters; validated at every creation seam (4.6)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6057045Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6057159Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6057261Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6057370Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6057474Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6057580Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6057684Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6057793Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6057895Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6058027Z "path": "docs/KNOWN-HAZARDS.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6058146Z "line": 133 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6058238Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6058337Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6058437Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6058539Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6058656Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6058765Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6058870Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6059068Z "path": "crates/spt-msg/src/ready.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6059173Z "line": 65 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6059279Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6059387Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6059516Z "path": "crates/spt-proto/src/id.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6059622Z "line": 17 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6059716Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6059813Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6059960Z "path": "crates/spt-store/src/shellinfo.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6060064Z "line": 146 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6060166Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6060270Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6060413Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6060523Z "line": 310 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6060623Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6060718Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6060871Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6060975Z "line": 441 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6061077Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6061181Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6061314Z "path": "crates/spt/src/api/worker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6061415Z "line": 32 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6061524Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6061633Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6061761Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6061869Z "line": 1283 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6061968Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6062074Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6062203Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6062302Z "line": 6161 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6062404Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6062489Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6062612Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6062718Z "line": 6443 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6062922Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6063028Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6063122Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6063227Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6063343Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6063451Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6063556Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6063757Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6063871Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6063977Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6064076Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6064204Z "path": "crates/spt-proto/src/id.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6064314Z "line": 94 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6064403Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6064507Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6064641Z "path": "crates/spt-proto/src/id.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6064746Z "line": 111 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6064845Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6064941Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6065065Z "path": "crates/spt-proto/src/id.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6065169Z "line": 124 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6065271Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6065380Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6065508Z "path": "crates/spt-proto/src/id.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6065614Z "line": 134 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6065723Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6065827Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6065966Z "path": "crates/spt-proto/src/id.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6066066Z "line": 144 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6066161Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6066263Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6066385Z "path": "crates/spt-proto/src/id.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6066491Z "line": 156 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6066601Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6066695Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6066849Z "path": "crates/spt-store/src/contextstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6066962Z "line": 746 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6067062Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6067171Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6067310Z "path": "crates/spt-store/src/shellinfo.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6067414Z "line": 309 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6067505Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6067615Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6067724Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6067830Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6067935Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6068020Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6068145Z "id": "REQ-HAZARD-INBOX-NO-DOUBLE", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6068297Z "title": "No double-delivery via legacy inbox (4.5)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6068416Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6068526Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6068621Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6068721Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6068827Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6068930Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6069142Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6069259Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6069354Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6069449Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6069571Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6069680Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6069786Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6069919Z "path": "crates/spt-msg/src/deliver.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6070028Z "line": 128 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6070135Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6070234Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6070338Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6070445Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6070558Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6070653Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6070754Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6070863Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6070968Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6071083Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6071169Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6071297Z "path": "crates/spt-msg/src/deliver.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6071398Z "line": 205 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6071502Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6071708Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6071802Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6071898Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6071985Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6072094Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6072231Z "id": "REQ-HAZARD-INFO-JSON-TORN-READ", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6072401Z "title": "State-file reads tolerate concurrent writes (1.2)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6072629Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6072730Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6072833Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6072939Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6073044Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6073138Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6073245Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6073349Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6073453Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6073564Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6073664Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6073773Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6073879Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6074016Z "path": "crates/spt-store/src/info.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6074131Z "line": 367 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6074232Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6074326Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6074455Z "path": "crates/spt-store/src/info.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6074566Z "line": 378 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6074674Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6074778Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6074917Z "path": "crates/spt-store/src/info.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6075014Z "line": 396 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6075109Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6075215Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6075320Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6075415Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6075526Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6075635Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6075729Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6075836Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6075950Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6076063Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6076169Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6076307Z "path": "crates/spt-store/src/info.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6076416Z "line": 420 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6076513Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6076612Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6076746Z "path": "crates/spt-store/src/info.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6076865Z "line": 441 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6076950Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6077051Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6077184Z "path": "crates/spt-store/src/info.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6077289Z "line": 811 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6077395Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6077490Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6077631Z "path": "crates/spt-store/src/info.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6077736Z "line": 822 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6077842Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6077951Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6078075Z "path": "crates/spt-store/src/info.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6078180Z "line": 835 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6078265Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6078371Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6078471Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6078580Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6078680Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6078766Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6078914Z "id": "REQ-HAZARD-INJECT-CONTROL-COEXIST", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6086677Z "title": "SPINE INVARIANT (v0.13.0 keystone): the broker must accept INJECTED keystrokes into an spt-hosted PTY (the v0.11.0 raw direct-inject today; the ADR-0022 translation-binary choreography tomorrow) WHILE a live `spt rc` controller is attached to the SAME PTY, without (a) the operator losing control, (b) the endpoint latching ONLINE+CONTROLLED, or (c) the broker wedging. The injection inlet is PERMANENT — spt-claude-code requires keystroke injection — so this is root-caused + fixed at the PTY-injection layer, IN STEP with the ADR-0022 delivery redesign that formalizes the inlet. REOPENS the wedge facet of REQ-HAZARD-ATTACH-WEDGE: the v0.12.1 prove-don't-change covered only DEAD-CHILD backpressure, NOT the injection trigger (operator's signal — one injected keystroke succeeds, the next wedges → the single-threaded broker parks on a blocking PTY/loopback write after injection-induced harness output). REPRO-FIRST on the real dummy-harness fixture (NO theory): instrument to nail the exact blocking call before any fix. Fix candidates: non-blocking/fail-fast PTY write, split input/output, bounded-evicting. Mechanism shared with W2 — spt-core owns EVERY PTY write and applies an injected sequence ATOMICALLY (controller input buffered during the sequence, flushed after) so a stash/restore can't be clobbered. CONFIRMED ROOT (doyle /diagnose 2026-06-19, code-grounded): Broker::append (broker.rs:205-227) fans each live output chunk to the CONTROLLER on a SYNCHRONOUS BLOCKING write_frame held inline in the session's drain thread (the 'authoritative, advances delivered_through' path, D4-1), while VIEWERS use a dedicated writer thread + bounded evicting sync_channel (add_viewer:273 / viewer_writer) that can never stall the drain. So a slow/backed-up controller socket — or the full 64KB loopback duplex (the ATTACH-WEDGE buffer) — BLOCKS the drain thread → output stalls → keystroke echoes stall (PERCEIVED input lag) → unrecoverable wedge when the consumer never drains. TRIGGERS ON NORMAL INTERACTIVE rc USE under heavy harness output (TUI redraw), NOT only message injection — same root, wider repro. FIX DIRECTION: move controller delivery off the drain thread onto a dedicated writer (the viewer_writer pattern) BUT preserve the authoritative cursor — block the WRITER thread (not the drain), bound the wedge (deadline → detach/mark-gone, never park forever), never silently evict the operator's authoritative view. (v0.13.0)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6087054Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6087163Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6087272Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6087364Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6087462Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6087582Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6087684Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6087796Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6087902Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6088003Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6088101Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6088219Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6088320Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6088426Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6088577Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6088683Z "line": 335 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6088782Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6088868Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6089111Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6089231Z "line": 762 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6089336Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6089440Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6089575Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6089688Z "line": 1026 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6089803Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6089909Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6090017Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6090113Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6090224Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6090318Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6090427Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6090612Z "path": "crates/spt-daemon/tests/inject_control_wedge.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6090711Z "line": 256 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6090820Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6090921Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6091091Z "path": "crates/spt-daemon/tests/inject_control_wedge.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6091183Z "line": 382 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6091288Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6091392Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6091493Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6091593Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6091702Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6091808Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6092017Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6092170Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6092284Z "line": 2427 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6092388Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6092499Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6092642Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6092852Z "line": 2485 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6092951Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6093048Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6093148Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6093256Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6093365Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6093465Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6093634Z "id": "REQ-HAZARD-INPUT-ACK-BACKPRESSURE", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6101091Z "title": "A FLOOD of operator input on one brain↔broker connection deadlocks the broker PERMANENTLY (entire broker — no new/existing attach; the controller stays latched because the per-conn handler can't process the detach). ROOT (doyle /diagnose, code-grounded + HITL capture, the v0.13.0 P1 ctrl+V re-open): `serve_attach` processes a whole `NetStreamData` batch of N operator `Input` records in its inner `for rec in decoder.push()` loop, calling `brain.send_effect(op_id, &bytes)` N times WITHOUT returning to `read_event()` — so the brain writes N `KIND_INPUT` frames back-to-back and drains nothing. The broker's single-threaded per-conn handler answers EACH with `send_frame(applied_envelope)` on the SAME conn (B5 exactly-once ack, KNOWN-HAZARDS 7.2). With the brain not reading, the broker→brain return direction fills (~10 frames = the IPC pipe buffer) → `send_frame` BLOCKS → the handler stops reading → the brain's writes block too → mutual full-duplex DEADLOCK. Capture pinned it: 11 input frames, write_input 11/11 (P0 holds — the PTY write is fine), ack send START=11 / END=10 (frame #11's applied-ack never returns). Same class as the v0.12.1 L0 two-conn split. Windows Terminal's ctrl+V paste accelerator was the trigger (injects the clipboard as a char-by-char key flood) but the deadlock is generic to ANY input flood, NOT ctrl+V-specific and NOT a P0 (PTY-write) or W1 (output-drain) regression. The applied-ack is load-bearing ONLY for `shellchan` (one-at-a-time spool delivery WAITS on `BrokerEvent::Applied`); `serve_attach` DISCARDS it (the operator/rc path is fire-and-forward, op_id for dedup only, never gates on the ack). FIX (doyle-approved): CONDITIONAL ACK — `InputReq` gains `ack: bool` (serde default = true, N-1-safe: an older brain's input still acks = today's behavior). `serve_attach`'s operator path calls `send_effect_no_ack` (ack=false) → `dispatch_input` writes NO applied frame → the per-conn handler never writes back while servicing the flood → it always drains → no deadlock (cures ANY input flood). `shellchan` keeps `send_effect` (ack=true) and its `Applied`-wait. Exactly-once PRESERVED: the broker still dedups by (session, op_id) at the applied-set regardless of the ack. N-1 caveat: an OLD resident broker (self-update window) ignores `ack=false` → still acks → the deadlock persists until a broker restart (inherent KNOWN-HAZARDS 7.9 broker-resident-wire-change class). (v0.13.0)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6101299Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6101409Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6101520Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6101623Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6101738Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6101843Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6101947Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6102053Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6102167Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6102281Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6102383Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6102529Z "path": "docs/KNOWN-HAZARDS.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6102639Z "line": 454 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6102745Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6102844Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6102949Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6103055Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6103163Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6103384Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6103497Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6103646Z "path": "crates/spt-daemon/src/attach.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6103760Z "line": 203 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6103859Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6103963Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6104199Z "path": "crates/spt-daemon/src/brain.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6104310Z "line": 487 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6104410Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6104519Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6104672Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6104781Z "line": 1822 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6104886Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6104977Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6105120Z "path": "crates/spt-daemon/src/msg.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6105220Z "line": 331 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6105326Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6105430Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6105530Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6105640Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6105749Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6105860Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6105965Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6106121Z "path": "crates/spt-daemon/tests/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6106228Z "line": 737 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6106341Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6106449Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6106602Z "path": "crates/spt-daemon/tests/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6106714Z "line": 854 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6106814Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6106915Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6107100Z "path": "crates/spt-daemon/tests/inject_control_wedge.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6107206Z "line": 544 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6107316Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6107414Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6107592Z "path": "crates/spt-daemon/tests/inject_control_wedge.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6107705Z "line": 1800 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6107812Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6107921Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6108092Z "path": "crates/spt-daemon/tests/input_ack_deadlock.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6108198Z "line": 266 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6108297Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6108407Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6108508Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6108616Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6108736Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6108842Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6109012Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6109142Z "path": "crates/spt-daemon/src/msg.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6109255Z "line": 985 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6109359Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6109460Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6109602Z "path": "crates/spt-daemon/src/msg.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6109712Z "line": 1019 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6109817Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6109917Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6110022Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6110132Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6110223Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6110327Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6110457Z "id": "REQ-HAZARD-INSTANT-UNDERFLOW", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6111082Z "title": "Scheduling never subtracts a Duration from Instant::now() (underflow-panics on a host booted more recently than the offset); 'due now / never run' is Option=None gated on forward duration_since only (5.9)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6111214Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6111315Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6111420Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6111523Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6111633Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6111737Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6111859Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6111969Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6112065Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6112174Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6112279Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6112488Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6112594Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6112752Z "path": "crates/spt-daemon/src/pump/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6112865Z "line": 759 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6112971Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6113180Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6113286Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6113395Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6113504Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6113620Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6117110Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6117260Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6117388Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6117504Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6117617Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6117780Z "path": "crates/spt-daemon/src/pump/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6117899Z "line": 873 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6118003Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6118109Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6118218Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6118323Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6118429Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6118528Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6118696Z "id": "REQ-HAZARD-LIVEHOST-BOOT-LIVENESS-GATE", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6121279Z "title": "B5: `spt daemon start` does NOT revive phantom Psyches for dead-but-online-latched perches. Today reconcile_once (livehost.rs:285) spawns a Psyche per status=online live_agent perch at boot WITHOUT verifying the harness child / {id}-psyche is actually alive — so a Cold start after an unclean stop revives N psyches for N dead-but-latched perches (3 psyches for 3 dead perches). FIX: gate the boot psyche-spawn on real child-liveness — a perch with NO live broker session (the B2 reconcile signal) is marked OFFLINE at boot instead of hosted, so a dead-harness perch is never revived. Shares the B2 reconcile loop (this is its boot-gate arm); composes with B2's honest latch. Also closes wall-a's psyche_host_error gap (residency-confirm does not run at boot tick-1, livehost.rs:395-441 / 257-263). (v0.12.0)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6121417Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6121522Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6121628Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6121735Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6121837Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6121943Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6122050Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6122178Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6122284Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6122386Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6122485Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6122601Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6122710Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6122820Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6122973Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6123082Z "line": 705 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6123183Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6123287Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6123392Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6123498Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6123616Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6123725Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6123832Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6124002Z "path": "crates/spt/tests/livehost_bootgate_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6124103Z "line": 24 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6124208Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6124303Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6124408Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6124509Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6124622Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6124728Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6124829Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6124979Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6125079Z "line": 918 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6125179Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6125282Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6125392Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6125497Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6125596Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6125706Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6125987Z "id": "REQ-HAZARD-LIVEHOST-BOOT-RACE", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6129751Z "title": "The brain's daemon-hosted Psyche lifecycle surfaces a host-FAILURE on the live perch (harness-diagnosable) and runs net-INDEPENDENTLY. When reconcile_once→host_one→spawn_psyche fails for a state=live_agent+status=online endpoint (e.g. the adapter's psyche binary absent from its install dir, REQ-INSTALL-11), the failure MUST be written to the perch info.json as a CURRENT-STATE field (reason + ts + attempt count; overwritten each 5s retry, CLEARED on successful host) and surfaced by `spt endpoint list`/status — never left as an eprintln on the brain's invisible stderr where a harness reading only perch state is blind. status=online stays authoritative (agent reachable; only the Psyche is missing — brain-restart rehydrate legitimately has online-without-Psyche windows), so this is a SEPARATE psyche-host-health field, never a status de-stamp. Net-independence is a locked-in invariant: spawn_live_host (brainproc.rs:230) reaches the reconcile and hosts the Psyche on a net-less/unpaired/peer-pump-STALLED node, proven by a REAL detached-daemon E2E (real broker→brain-child, real api seed+listen, real install-dir psyche binary). spt-core SURFACES the failure; the adapter owns fixing its packaging.", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6129999Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6130119Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6130220Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6130319Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6130413Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6130527Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6130633Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6130746Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6130866Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6130957Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6131061Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6131177Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6131295Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6131390Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6131544Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6131658Z "line": 391 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6131762Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6131868Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6132006Z "path": "crates/spt-store/src/info.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6132111Z "line": 343 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6132211Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6132310Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6132440Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6132550Z "line": 1750 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6132662Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6132767Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6132895Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6133003Z "line": 3191 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6133108Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6133219Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6133313Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6133419Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6133533Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6133642Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6133743Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6133909Z "path": "crates/spt/tests/livehost_bootrace_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6134029Z "line": 353 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6134125Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6134229Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6134401Z "path": "crates/spt/tests/livehost_psyche_fail_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6134520Z "line": 23 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6134620Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6134716Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6134815Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6134920Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6135026Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6135135Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6135240Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6135379Z "path": "crates/spt-store/src/info.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6135487Z "line": 743 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6135596Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6135696Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6135832Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6136038Z "line": 7863 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6136152Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6136261Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6136362Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6136466Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6136566Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6136668Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6136886Z "id": "REQ-HAZARD-LIVEHOST-NONRESIDENT", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6140330Z "title": "A daemon-hosted Psyche that spawns then EXITS IMMEDIATELY is a host failure, surfaced like a spawn failure (closes the v0.8.1 residual masking): the REQ-HAZARD-LIVEHOST-BOOT-RACE signal stamps `psyche_host_error` only when `spawn_psyche` returns Err, NOT when the detached spawn() returns Ok but the child dies within moments (e.g. a bad-argv child exiting 2 — the F-009 case). That leaves the residual 'online + no Psyche + no cause' gap: the nested `{id}-psyche` info.json is written status=online with a real-but-DEAD pid and the PARENT perch carries NO psyche_host_error (perri's F-010: tasklist showed 0 host procs across the window while info.json read online). The host MUST confirm RESIDENCY — a hosted child not alive (or whose `{id}-psyche` perch never re-registers / has a dead pid) within N seconds of spawn is treated as a host failure: stamp the parent perch `psyche_host_error{reason:\"host not resident within s (psyche perch missing/dead pid)\"}` (and do not leave a phantom online nested perch). Closes the last masking gap the v0.8.1 fix left open. perri's F-010 (v0.8.1 dogfood). Sibling of REQ-HAZARD-LIVEHOST-BOOT-RACE.", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6140470Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6140582Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6140688Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6140790Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6140883Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6140987Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6141092Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6141217Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6141335Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6141436Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6141546Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6141654Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6141765Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6141860Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6142013Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6142118Z "line": 64 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6142223Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6142332Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6142475Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6142585Z "line": 78 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6142686Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6142790Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6142942Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6143053Z "line": 170 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6143157Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6143256Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6143399Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6143516Z "line": 185 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6143625Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6143727Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6143863Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6143974Z "line": 195 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6144079Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6144188Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6144342Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6144446Z "line": 205 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6144550Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6144651Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6144804Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6144908Z "line": 294 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6145014Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6145118Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6145267Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6145385Z "line": 308 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6145485Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6145591Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6145843Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6145963Z "line": 377 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6146070Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6146170Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6146322Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6146526Z "line": 437 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6146627Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6146712Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6146865Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6146970Z "line": 455 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6147074Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6147180Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6147284Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6147393Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6147509Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6147618Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6147727Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6147886Z "path": "crates/spt/tests/livehost_bootrace_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6148000Z "line": 45 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6148095Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6148196Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6148343Z "path": "crates/spt/tests/livehost_bootrace_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6148453Z "line": 354 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6148558Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6148666Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6148838Z "path": "crates/spt/tests/livehost_nonresident_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6149021Z "line": 31 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6149126Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6149269Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6149442Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6149556Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6149660Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6149780Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6149880Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6150033Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6150151Z "line": 727 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6150251Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6150357Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6150457Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6150561Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6150652Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6150758Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6150890Z "id": "REQ-HAZARD-LOCAL-API-AUTH", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6151133Z "title": "Every local `api` mutation authenticated to an endpoint/session (codex #13)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6151258Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6151359Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6151467Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6151571Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6151681Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6151782Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6151904Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6152011Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6152115Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6152224Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6152335Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6152449Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6152548Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6152692Z "path": "crates/spt/src/api/auth.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6152801Z "line": 14 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6152907Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6153012Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6153150Z "path": "crates/spt/src/api/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6153256Z "line": 566 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6153364Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6153464Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6153570Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6153679Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6153806Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6153912Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6154006Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6154114Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6154224Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6154335Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6154438Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6154577Z "path": "crates/spt/src/api/auth.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6154686Z "line": 130 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6154926Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6155025Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6155159Z "path": "crates/spt/src/api/auth.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6155278Z "line": 138 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6155378Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6155483Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6155721Z "path": "crates/spt/src/api/auth.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6155836Z "line": 146 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6155945Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6156045Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6156184Z "path": "crates/spt/src/api/auth.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6156293Z "line": 154 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6156404Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6156504Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6156640Z "path": "crates/spt/src/api/auth.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6156755Z "line": 162 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6156864Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6156971Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6157106Z "path": "crates/spt/src/api/auth.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6157230Z "line": 170 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6157334Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6157440Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6157540Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6157634Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6157736Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6157835Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6157987Z "id": "REQ-HAZARD-PAIR-RATE-LIMIT", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6160312Z "title": "Subnet-global pairing rate limit: one active ceremony per subnet, shared attempt counter, exponential backoff — a public pre-trust relay + multiple seed-holders otherwise enables distributed SPAKE2 guessing (and ±1 TOTP window triples the valid-password space) (ADR-0005 #11)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6160450Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6160568Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6160674Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6160783Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6160878Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6160989Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6161094Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6161212Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6161314Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6161412Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6161537Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6161652Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6161756Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6161948Z "path": "crates/spt-net/src/net/pairing/ratelimit.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6162050Z "line": 34 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6162164Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6162256Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6162360Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6162465Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6162585Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6162699Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6162798Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6162909Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6163018Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6163133Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6163233Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6163414Z "path": "crates/spt-net/src/net/pairing/ratelimit.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6163539Z "line": 188 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6163633Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6163743Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6163910Z "path": "crates/spt-net/src/net/pairing/ratelimit.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6164019Z "line": 200 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6164130Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6164239Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6164404Z "path": "crates/spt-net/src/net/pairing/ratelimit.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6164519Z "line": 211 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6164627Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6164731Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6164904Z "path": "crates/spt-net/src/net/pairing/ratelimit.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6165007Z "line": 253 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6165113Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6165223Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6165385Z "path": "crates/spt-net/src/net/pairing/ratelimit.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6165637Z "line": 277 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6165734Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6165838Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6165995Z "path": "crates/spt-net/src/net/pairing/ratelimit.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6166100Z "line": 300 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6166205Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6166406Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6166586Z "path": "crates/spt-net/src/net/pairing/ratelimit.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6166702Z "line": 316 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6166806Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6166906Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6167017Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6167144Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6167243Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6167353Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6167494Z "id": "REQ-HAZARD-PAIR-SEED-ROTATION", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6168085Z "title": "Removing a node rotates the subnet seed (epoch bump) so an old node/old seed cannot rejoin; trust-store delete alone is NOT revocation because the seed is replicated to every trusted node (ADR-0005 #10)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6168223Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6168329Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6168434Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6168537Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6168643Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6168748Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6168877Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6169086Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6169617Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6169734Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6169852Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6169967Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6170075Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6170227Z "path": "crates/spt-store/src/subnet.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6170334Z "line": 29 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6170427Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6170538Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6170681Z "path": "crates/spt-store/src/subnet.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6170795Z "line": 174 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6170905Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6171010Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6171153Z "path": "crates/spt-store/src/subnet.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6171263Z "line": 194 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6171367Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6171467Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6171619Z "path": "crates/spt-store/src/subnet.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6171724Z "line": 222 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6171821Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6171920Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6172025Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6172126Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6172245Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6172359Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6172460Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6172564Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6172682Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6172792Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6172888Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6173025Z "path": "crates/spt-store/src/subnet.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6173136Z "line": 329 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6173240Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6173345Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6173484Z "path": "crates/spt-store/src/subnet.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6173583Z "line": 344 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6173698Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6173794Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6173926Z "path": "crates/spt-store/src/subnet.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6174037Z "line": 417 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6174141Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6174246Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6174376Z "path": "crates/spt-store/src/subnet.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6174489Z "line": 433 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6174594Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6174705Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6174837Z "path": "crates/spt-store/src/subnet.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6174941Z "line": 492 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6175168Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6175267Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6175412Z "path": "crates/spt-store/src/subnet.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6175525Z "line": 506 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6175626Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6175726Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6175974Z "path": "crates/spt-store/src/subnet.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6176084Z "line": 517 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6176183Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6176289Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6176427Z "path": "crates/spt-store/src/subnet.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6176545Z "line": 528 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6176647Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6176756Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6176865Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6176967Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6177070Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6177170Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6177324Z "id": "REQ-HAZARD-PAIR-TRANSCRIPT-BIND", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6178054Z "title": "Pairing transcript binds roles, both node pubkeys, subnet ID, seed epoch, TOTP time-step, and confirmation MACs — or unknown-key-share/reflection/wrong-subnet/replay pairing remain possible (ADR-0005 #12)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6178168Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6178279Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6178388Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6178492Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6178598Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6178707Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6178826Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6178932Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6179107Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6179218Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6179332Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6179441Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6179552Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6179713Z "path": "crates/spt-net/src/net/pairing/spake.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6179815Z "line": 27 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6179914Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6180014Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6180177Z "path": "crates/spt-net/src/net/pairing/spake.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6180290Z "line": 110 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6180389Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6180484Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6180635Z "path": "crates/spt-net/src/net/pairing/spake.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6180744Z "line": 153 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6180850Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6180950Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6181098Z "path": "crates/spt-net/src/net/pairing/spake.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6181207Z "line": 182 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6181316Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6181418Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6181594Z "path": "crates/spt-net/src/net/pairing/transcript.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6181698Z "line": 31 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6181808Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6181909Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6182081Z "path": "crates/spt-net/src/net/pairing/transcript.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6182189Z "line": 113 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6182294Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6182400Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6182571Z "path": "crates/spt-net/src/net/pairing/transcript.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6182692Z "line": 138 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6182786Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6182895Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6183001Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6183106Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6183228Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6183333Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6183444Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6183547Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6183671Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6183777Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6183881Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6184035Z "path": "crates/spt-net/src/net/pairing/spake.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6184144Z "line": 261 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6184354Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6184459Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6184621Z "path": "crates/spt-net/src/net/pairing/spake.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6184730Z "line": 276 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6184820Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6185021Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6185178Z "path": "crates/spt-net/src/net/pairing/spake.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6185280Z "line": 293 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6185387Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6185491Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6185654Z "path": "crates/spt-net/src/net/pairing/spake.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6185761Z "line": 310 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6185866Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6185967Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6186123Z "path": "crates/spt-net/src/net/pairing/spake.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6186238Z "line": 327 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6186344Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6186457Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6186610Z "path": "crates/spt-net/src/net/pairing/spake.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6186724Z "line": 366 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6186830Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6186934Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6187106Z "path": "crates/spt-net/src/net/pairing/transcript.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6187221Z "line": 179 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6187330Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6187434Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6187606Z "path": "crates/spt-net/src/net/pairing/transcript.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6187711Z "line": 194 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6187822Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6187930Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6188099Z "path": "crates/spt-net/src/net/pairing/transcript.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6188203Z "line": 204 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6188307Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6188411Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6188572Z "path": "crates/spt-net/src/net/pairing/transcript.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6188690Z "line": 259 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6188800Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6188905Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6189163Z "path": "crates/spt-net/src/net/pairing/transcript.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6189276Z "line": 269 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6189382Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6189487Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6189653Z "path": "crates/spt-net/src/net/pairing/transcript.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6189764Z "line": 283 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6189859Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6189963Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6190060Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6190168Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6190273Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6190375Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6190516Z "id": "REQ-HAZARD-PARENT-PID-PREFER", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6190737Z "title": "Prefer stable parent PID / broker handle over ephemeral PID (2.1)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6190869Z "requiredStages": [], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6190978Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6191087Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6191205Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6191314Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6191415Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6191524Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6191648Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6191754Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6191858Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6191963Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6192073Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6192187Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6192288Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6192402Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6192506Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6192627Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6192735Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6192835Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6192932Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6193022Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6193169Z "id": "REQ-HAZARD-PSYCHE-OUTBOUND-PROXY", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6194218Z "title": "Psyche outbound captured + sanitized: the live-Psyche turn driver captures stdout (never Stdio::null), and the daemon strips/re-stamps Psyche-supplied from=/target and constrains routing (reply→__REPLY_TO__ sender, notify→own user/subnet) (7.3)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6194441Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6194556Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6194661Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6194760Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6194871Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6194980Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6195099Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6195210Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6195318Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6195428Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6195544Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6195642Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6195743Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6195896Z "path": "crates/spt-daemon/src/psyrelay.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6196019Z "line": 26 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6196128Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6196233Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6196388Z "path": "crates/spt-daemon/src/psyrelay.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6196498Z "line": 95 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6196622Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6196726Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6196870Z "path": "crates/spt-daemon/src/psyrelay.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6196988Z "line": 166 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6197085Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6197194Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6197337Z "path": "crates/spt-live/src/outbound.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6197443Z "line": 19 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6197552Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6197656Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6197805Z "path": "crates/spt-live/src/outbound.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6197914Z "line": 50 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6198014Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6198106Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6198252Z "path": "crates/spt-live/src/turn.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6198354Z "line": 18 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6198458Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6198572Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6198707Z "path": "crates/spt-live/src/turn.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6198829Z "line": 71 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6198928Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6199127Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6199283Z "path": "crates/spt-proto/src/event.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6199389Z "line": 87 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6199493Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6199584Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6199695Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6199799Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6199922Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6200033Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6200133Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6200232Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6200339Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6200447Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6200552Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6200705Z "path": "crates/spt-daemon/src/psyrelay.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6200819Z "line": 289 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6200920Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6201025Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6201168Z "path": "crates/spt-daemon/src/psyrelay.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6201279Z "line": 314 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6201382Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6201495Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6201647Z "path": "crates/spt-daemon/src/psyrelay.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6201755Z "line": 350 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6201860Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6201966Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6202117Z "path": "crates/spt-daemon/src/psyrelay.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6202228Z "line": 418 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6202328Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6202538Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6202690Z "path": "crates/spt-daemon/src/psyrelay.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6202804Z "line": 429 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6202910Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6203019Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6203167Z "path": "crates/spt-daemon/src/psyrelay.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6203362Z "line": 460 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6203472Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6203577Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6203729Z "path": "crates/spt-daemon/src/psyrelay.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6203836Z "line": 471 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6203939Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6204049Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6204193Z "path": "crates/spt-live/src/outbound.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6204306Z "line": 77 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6204400Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6204501Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6204644Z "path": "crates/spt-live/src/outbound.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6204758Z "line": 97 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6204855Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6204958Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6205098Z "path": "crates/spt-live/src/outbound.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6205211Z "line": 112 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6205320Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6205427Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6205569Z "path": "crates/spt-live/src/outbound.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6205683Z "line": 123 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6205789Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6205898Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6206032Z "path": "crates/spt-live/src/outbound.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6206151Z "line": 130 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6206256Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6206361Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6206508Z "path": "crates/spt-live/src/outbound.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6206617Z "line": 145 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6206726Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6206835Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6206976Z "path": "crates/spt-live/src/turn.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6207078Z "line": 115 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6207191Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6207296Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6207430Z "path": "crates/spt-live/src/turn.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6207544Z "line": 130 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6207650Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6207754Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6207901Z "path": "crates/spt-proto/src/event.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6208012Z "line": 428 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6211528Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6211651Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6211756Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6211858Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6211956Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6212059Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6212217Z "id": "REQ-HAZARD-PTY-INPUT-WRITER-WEDGE", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6218548Z "title": "Pasting into an `spt rc` session WEDGES the broker — after a paste the operator can no longer type AND can no longer attach to NEW or EXISTING sessions (`brain IPC read deadline`). ROOT (doyle /diagnose, code-grounded): the operator-keystroke path rc -> net-stream Input -> serve_attach (attach.rs:197 brain.send_effect) -> KIND_INPUT -> broker dispatch loop (broker.rs:1091) -> dispatch_input (broker.rs:1459) -> session.write_input(&bytes) runs SYNCHRONOUSLY on the broker request-handling thread. W1b (REQ-HAZARD-EFFECT-JOURNAL-PTY-WEDGE) released the journal lock across the effect (fix 1) + made PtyWrite ephemeral/no-fsync (fix 3) but EXPLICITLY DEFERRED fix (2) — bound/fail-fast the PtyWrite itself. A single keystroke never fills the ConPTY input buffer; a PASTE BURST does -> write_input blocks -> the dispatch thread cannot service the next frame (a re-attach subscribe, a become_controller restore-write, an inject-floor flush) -> wedge. Not a bug-2 regression (the byte path funnels to the same write_input; paste just reliably fills the buffer). FIX (doyle design, V0.13.0-P0-PTY-INPUT-WRITER-DESIGN.md, CONTEXT L33 broker-owns-PTY/minimal + L435 SessionSurface + single-writer pattern): one dedicated per-session INPUT-WRITER THREAD = the SOLE caller of the blocking write_input, fed by a BOUNDED FIFO channel; every caller (dispatch_input, serve_attach->send_effect, inject-floor flush) ENQUEUES + returns immediately, never blocks. A blocked/slow harness blocks ONLY its own writer thread, never the broker dispatch. Backpressure (operator ruling): queue full => DROP excess input + stamp the session INPUT_BACKPRESSURE (visible health signal); the daemon NEVER wedges; a merely-slow harness self-heals as the writer drains. Exactly-once preserved (PtyWrite ephemeral: apply_once effect = the non-blocking enqueue => Applied; ack now means accepted+ordered, benign — rc does not gate on landing); order preserved (single FIFO + single writer); inject-floor (W2 Layer C) choreography moves to the lone writer. Completes the W1b-deferred fix (2), cross-platform (cfg(unix) forkpty park folds in). (v0.13.0)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6218939Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6219144Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6219254Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6219359Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6219454Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6219555Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6219678Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6219784Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6219898Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6219991Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6220091Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6220206Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6220313Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6220408Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6220557Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6220666Z "line": 943 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6220772Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6220876Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6221019Z "path": "crates/spt-store/src/info.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6221139Z "line": 322 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6221235Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6221343Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6221444Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6221543Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6221653Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6221759Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6221868Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6222050Z "path": "crates/spt-daemon/tests/inject_control_wedge.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6222154Z "line": 1978 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6222259Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6222360Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6222465Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6222568Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6222668Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6222782Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6222875Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6223018Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6223120Z "line": 2529 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6223223Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6223328Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6223467Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6223581Z "line": 2593 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6223682Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6223792Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6223924Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6224035Z "line": 2648 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6224139Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6224239Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6224340Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6224445Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6224549Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6224651Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6224792Z "id": "REQ-HAZARD-PUMP-IPC-DEADLINE", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6225665Z "title": "The single-threaded peer pump's brain-IPC reads are deadline-bounded (PUMP_PEER_IO_TIMEOUT, total-wait per call); a TimedOut read POISONS the client and escalates to a SUPERVISED RESTART, never a per-peer retry — a black-holed peer must never wedge the whole pump", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6225907Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6226017Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6226126Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6226233Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6226332Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6226436Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6226661Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6226779Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6226886Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6226985Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6227123Z "path": "docs/KNOWN-HAZARDS.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6227233Z "line": 374 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6227333Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6227438Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6227539Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6227647Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6227756Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6227865Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6227959Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6228111Z "path": "crates/spt-daemon/src/brain.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6228227Z "line": 200 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6228326Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6228430Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6228574Z "path": "crates/spt-daemon/src/brain.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6228673Z "line": 304 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6228785Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6228889Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6229118Z "path": "crates/spt-daemon/src/brain.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6229222Z "line": 562 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6229327Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6229424Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6229556Z "path": "crates/spt-daemon/src/brain.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6229665Z "line": 577 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6229757Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6229866Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6229990Z "path": "crates/spt-daemon/src/brain.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6230101Z "line": 1224 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6230204Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6230305Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6230463Z "path": "crates/spt-daemon/src/pump/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6230571Z "line": 443 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6230671Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6230775Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6230921Z "path": "crates/spt-daemon/src/pump/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6231031Z "line": 590 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6231137Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6231240Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6231385Z "path": "crates/spt-daemon/src/pump/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6231494Z "line": 731 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6231598Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6231704Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6231790Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6231898Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6232009Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6232113Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6232223Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6232329Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6232437Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6232557Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6232705Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6232935Z "path": "crates/spt-daemon/src/pump/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6233057Z "line": 1155 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6233152Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6233261Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6233416Z "path": "crates/spt-daemon/tests/pumpdeadline.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6233525Z "line": 30 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6233622Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6233731Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6233831Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6233937Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6234037Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6234141Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6234280Z "id": "REQ-HAZARD-RC-ATTACH-FAILFAST", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6237742Z "title": "B1: `spt rc ` to a DEAD or non-streaming session fails fast with a clear message, never an INFINITE blank screen. Today rc.rs run_attach (209-231) + pump spawns PUMP_IPC_READER and blocks: the poll times out each slice but the stream never produces output, so the operator sees a permanent blank (operator: fresh wall-f attached, closed tab, then `spt rc wall-f` HUNG — the broker still resolved a session for it). FIX: (a) once B2 lands, gate attach on is_online/status — an offline endpoint yields a clean 'endpoint offline, start it' not an attach; (b) fail-fast — if the attach-open ack / first output does not arrive within a bound, surface a clear message, never an infinite blank; (c) the broker EOFs the attach stream when the session's child is dead, so rc's existing PumpEnd::BrokerGone graceful path (REQ-HAZARD-RC-EOF) catches it. PIN the exact sub-mechanism with a repro test FIRST (dead-session-lingers-in-broker vs reaped-but-rc-waits vs alive-resting-no-wake — the wall-f Windows tab-close: child alive-silent vs dead-not-reaped). (v0.12.0)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6238081Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6238188Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6238297Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6238402Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6238510Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6238614Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6238720Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6238830Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6238933Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6239130Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6239239Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6239354Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6239459Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6239563Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6239692Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6239807Z "line": 718 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6239901Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6240003Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6240131Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6240230Z "line": 887 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6240332Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6240436Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6240540Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6240651Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6240760Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6240870Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6240971Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6241121Z "path": "crates/spt-daemon/tests/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6241231Z "line": 420 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6241335Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6241429Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6241519Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6241625Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6241730Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6241844Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6241945Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6242073Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6242177Z "line": 1072 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6242283Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6242388Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6242502Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6242617Z "line": 1096 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6242717Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6242817Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6242922Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6243021Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6243127Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6243223Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6243370Z "id": "REQ-HAZARD-RC-ATTACH-ONLINE-RACE", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6247279Z "title": "`spt endpoint run` in an ATTACH/VIEW terminal action attaches BEFORE the freshly-spawned endpoint is online, so the attach races (or outright loses to) the harness bind. ROOT (doyle /diagnose, code-grounded): cmd_endpoint_run (cli.rs) does launch_harness_brokered_in -> (if start: return) -> run_attach with NO await-online between them. launch_harness_brokered_in returns once the harness PROCESS is spawned, but the broker-PTY bind (info status -> STATUS_ONLINE + the live session) lands ASYNC. Both picker attach paths route here with start=false (RunMode::Attach -> cmd_endpoint_run start=false,view=false): Start-now catches the endpoint mid-bringup -> run_attach attempts + loses the handshake race; Resume-from-history catches it still fully OFFLINE -> run_attach's status-gate (REQ-HAZARD-RC-ATTACH-FAILFAST) short-circuits 'offline - nothing to attach' and NEVER attempts. SAME root, two faces (the W4 attach-by-default surfaced both; an online endpoint is unaffected - the picker returns Outcome::Attach, not Run). FIX: in cmd_endpoint_run, when the terminal action is attach/view (NOT start), AWAIT the endpoint online between launch_harness_brokered_in success and run_attach - poll spt_store::info read_info().status to STATUS_ONLINE with a bounded harness-boot deadline (~25s) at a tight interval; on online -> run_attach; on timeout -> ENDPOINT_RUN_ONLINE_TIMEOUT err (do NOT attach a dead bringup). (v0.13.0)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6247599Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6247710Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6247819Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6247923Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6248025Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6248134Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6248224Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6248345Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6248448Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6248553Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6248664Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6248772Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6248895Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6249056Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6249198Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6249303Z "line": 1417 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6249408Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6249512Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6249638Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6249742Z "line": 1441 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6249841Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6249957Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6250061Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6250166Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6250281Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6250390Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6250495Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6250648Z "path": "crates/spt/tests/dummy_harness_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6250762Z "line": 329 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6250864Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6250962Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6251072Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6251183Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6251296Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6251406Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6251508Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6251639Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6251748Z "line": 8169 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6251849Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6251951Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6252050Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6252152Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6252257Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6252356Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6252486Z "id": "REQ-HAZARD-RC-EOF", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6256473Z "title": "A severed broker stream during a live rc session surfaces GRACEFULLY, never as a raw io error that crashes the PTY. The rc read-loop (rc.rs:352-362) continues only on WouldBlock/TimedOut; ANY other read_event_until error — including UnexpectedEof 'failed to fill whole buffer' — returns Err → RC_FAIL → the PTY 'crashes' from the user's view. Confirmed trigger: a deliberate `spt daemon stop` (broker bounce) severs an active rc (perri stopped the daemon to release owlery watch handles). Same severed-broker-stream EOF class as the v0.9.1 seed fix (seed_fail_message) and the listener-death case — spt-core must classify a broker-gone EOF and (a) surface a CLEAR actionable message ('daemon stopped/restarted — re-run / reconnect'), never the raw buffer error, and ideally (b) AUTO-REATTACH to the same session on the fresh broker (the broker is the daemon-lifetime anchor; it returns on the next `spt api` call). FOLD two side-observations: (1) `spt daemon stop` SILENTLY drops active rc/live sessions — warn ('N active session(s) will drop') or graceful-detach on stop; (2) the daemon holds owlery WATCH HANDLES on perch dirs so a torn-down perch dir stays 'Device busy' until a full daemon stop releases them (perri's rt-* cleanup) — a torn-down perch's handle should release without a daemon stop. doyle Finding C, root-caused. (post-v0.10.0)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6256735Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6256932Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6257041Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6257149Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6257249Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6257360Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6257468Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6257583Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6257683Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6257787Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6257898Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6258007Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6258116Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6258242Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6258350Z "line": 910 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6258460Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6258557Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6258660Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6258755Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6258876Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6259065Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6259176Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6259280Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6259398Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6259508Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6259611Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6259739Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6259849Z "line": 1112 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6259954Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6260058Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6260159Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6260250Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6260354Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6260455Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6260593Z "id": "REQ-HAZARD-RC-INPUT-KEY-ENCODING", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6265254Z "title": "An `spt rc` session forwards the Backspace key as the VT DEL byte (0x7f), so the hosted TUI (Claude Code) deletes ONE character — never a whole word. SYMPTOM (operator dogfooding): Backspace in an rc session always behaves like ctrl+Backspace — deletes the entire last word. ROOT (doyle /diagnose, code-grounded, byte PENDING HITL confirm): rc is a RAW VERBATIM byte pump — spawn_stdin_reader (rc.rs:152) reads std::io::stdin() bytes under crossterm raw mode and forwards them unchanged (parse_stdin_chunk only intercepts the ctrl-b detach prefix); there is NO key-event encoding and NO 0x08↔0x7f normalization ANYWHERE in the tree (grep: zero SetConsoleMode / ENABLE_VIRTUAL_TERMINAL_INPUT). On Windows, crossterm enable_raw_mode does NOT set ENABLE_VIRTUAL_TERMINAL_INPUT, so the LEGACY console delivers ^H (0x08, ctrl+h) for Backspace instead of VT DEL (0x7f); Claude Code maps ^H → backward-kill-word → the observed whole-word delete. CONFIRM-FIRST (build the loop): an env-gated hexdump in spawn_stdin_reader (SPT_RC_DEBUG_KEYS) prints the forwarded byte; operator presses Backspace + ctrl+Backspace in a real rc session. FIX CANDIDATES: (a) enable ENABLE_VIRTUAL_TERMINAL_INPUT on the rc stdin console on Windows so the console emits proper VT (Backspace→0x7f, arrows/Home/End as CSI) — cleanest, fixes the whole key map not just Backspace; (b) narrow normalize bare 0x08→0x7f in the rc input path (riskier — a real ctrl+h is also 0x08). Prefer (a) unless it regresses other keys. Add a KNOWN-HAZARDS.md entry on landing. (v0.13.0)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6265412Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6265516Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6265617Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6265718Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6265821Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6265927Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6266046Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6266155Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6266261Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6266375Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6266489Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6266704Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6266804Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6266938Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6267043Z "line": 264 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6267148Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6267367Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6267468Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6267577Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6267690Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6267799Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6267900Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6268009Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6268124Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6268238Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6268342Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6268468Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6268577Z "line": 1094 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6268671Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6268773Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6268887Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6269083Z "line": 1225 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6269197Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6269297Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6269426Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6269535Z "line": 1227 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6269635Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6269741Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6269845Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6269944Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6270045Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6270149Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6270285Z "id": "REQ-HAZARD-REGISTRY-CONCURRENT", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6270576Z "title": "Concurrent SQLite openers (registry/spool) must not fail with 'database is locked' (4.7)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6270695Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6270800Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6270909Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6271010Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6271110Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6271210Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6271340Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6271449Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6271553Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6271688Z "path": "docs/KNOWN-HAZARDS.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6271792Z "line": 139 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6271902Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6272003Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6272116Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6272221Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6272332Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6272449Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6272555Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6272699Z "path": "crates/spt-store/src/db.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6272797Z "line": 29 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6272907Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6273011Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6273157Z "path": "crates/spt-store/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6273267Z "line": 101 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6273368Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6273476Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6273620Z "path": "crates/spt-store/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6273734Z "line": 30 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6273843Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6273949Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6274082Z "path": "crates/spt-store/src/spool.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6274197Z "line": 48 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6274306Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6274397Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6274497Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6274607Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6274726Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6274831Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6274936Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6275040Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6275151Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6275265Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6275378Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6275526Z "path": "crates/spt-store/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6275752Z "line": 162 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6275853Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6275967Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6276071Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6276173Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6276278Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6276376Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6276520Z "id": "REQ-HAZARD-REGISTRY-DIR-CREATE", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6277035Z "title": "SQLite store opens create their parent dir themselves — a fresh-home registry op must not SQLITE_CANTOPEN (4.9)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6277155Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6277264Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6277364Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6277470Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6277573Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6277679Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6277785Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6277902Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6278009Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6278123Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6278259Z "path": "docs/KNOWN-HAZARDS.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6278379Z "line": 151 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6278480Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6278579Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6278684Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6278789Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6278907Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6279109Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6279208Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6279352Z "path": "crates/spt-store/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6279456Z "line": 22 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6279565Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6279672Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6279771Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6279875Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6279991Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6280109Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6280204Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6280306Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6280410Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6280519Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6280624Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6280774Z "path": "crates/spt-store/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6280888Z "line": 298 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6280989Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6281089Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6281188Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6281294Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6281394Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6281498Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6281647Z "id": "REQ-HAZARD-REGISTRY-EPOCH-LEASE", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6282123Z "title": "Registry merge ordered by per-node monotonic epoch, never wall-clock — a stale Active can't clobber a newer Offline (4.8, red-team #8)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6282248Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6282362Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6282466Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6282568Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6282666Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6282776Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6282892Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6283005Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6283111Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6283236Z "path": "docs/KNOWN-HAZARDS.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6283343Z "line": 145 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6283447Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6283558Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6283665Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6283779Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6283894Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6283998Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6284103Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6284252Z "path": "crates/spt-daemon/src/pump/update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6284361Z "line": 160 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6284462Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6284571Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6284728Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6284829Z "line": 200 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6284943Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6285047Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6285314Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6285416Z "line": 298 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6285520Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6285625Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6285764Z "path": "crates/spt-store/src/epoch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6285966Z "line": 20 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6286067Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6286175Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6286279Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6286389Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6286499Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6286608Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6286714Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6286819Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6286937Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6287043Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6287147Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6287300Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6287405Z "line": 937 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6287519Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6287624Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6287776Z "path": "crates/spt-daemon/tests/replicate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6287881Z "line": 88 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6287988Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6288096Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6288249Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6288354Z "line": 851 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6288458Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6288559Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6288702Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6288806Z "line": 870 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6288915Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6289078Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6289239Z "path": "crates/spt-net/src/net/replicate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6289345Z "line": 279 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6289454Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6289554Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6289693Z "path": "crates/spt-store/src/epoch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6289811Z "line": 82 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6289908Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6290026Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6290164Z "path": "crates/spt-store/src/epoch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6290279Z "line": 99 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6290379Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6290489Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6290632Z "path": "crates/spt-store/src/epoch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6290727Z "line": 119 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6290827Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6290933Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6291040Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6291135Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6291236Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6291339Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6291477Z "id": "REQ-HAZARD-REGISTRY-GHOST-ROWS", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6292856Z "title": "A dead node identity's registry rows must decay: only the per-(endpoint,node) epoch lease supersedes rows, so without eviction a vanished node's rows are immortal and poison bare-id resolution with phantom AcrossNodes ambiguity — evict rows whose author node has not been heard (admitted inbound feed) within the eviction window; own rows never decay; a revived node re-inserts from its durable epoch within one pump cadence (4.10)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6292988Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6293095Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6293208Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6293308Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6293414Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6293518Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6293632Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6293743Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6293852Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6293960Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6294094Z "path": "docs/KNOWN-HAZARDS.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6294211Z "line": 157 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6294310Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6294421Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6294630Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6294731Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6294836Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6294945Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6295046Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6295207Z "path": "crates/spt-daemon/src/pump/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6295408Z "line": 137 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6295512Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6295607Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6295765Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6295874Z "line": 564 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6295971Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6296061Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6296228Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6296353Z "line": 571 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6296451Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6296560Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6296712Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6296830Z "line": 227 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6296934Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6297045Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6297154Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6297259Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6297379Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6297497Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6297599Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6297703Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6297821Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6297932Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6298036Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6298199Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6298308Z "line": 1622 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6298417Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6298523Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6298684Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6298799Z "line": 1680 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6298896Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6299081Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6299220Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6299327Z "line": 883 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6299432Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6299542Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6299647Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6299756Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6299857Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6299962Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6300105Z "id": "REQ-HAZARD-REGISTRY-STALE-CLEAN", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6300328Z "title": "Stale registry entries degrade to fallback, never hard-fail (4.3)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6300453Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6300572Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6300672Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6300773Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6300877Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6300987Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6301103Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6301211Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6301311Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6301422Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6301544Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6301648Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6301749Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6301890Z "path": "crates/spt-store/src/proc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6302008Z "line": 15 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6302114Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6302219Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6302371Z "path": "crates/spt-store/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6302481Z "line": 55 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6302594Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6302696Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6302843Z "path": "crates/spt-store/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6302952Z "line": 66 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6303053Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6303153Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6303277Z "path": "crates/spt-store/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6303387Z "line": 115 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6303616Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6303712Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6303859Z "path": "crates/spt-store/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6303970Z "line": 138 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6304069Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6304174Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6304365Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6304477Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6304592Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6304710Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6304818Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6304924Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6305033Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6305137Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6305243Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6305387Z "path": "crates/spt-store/src/proc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6305500Z "line": 363 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6305601Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6305706Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6305834Z "path": "crates/spt-store/src/proc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6305949Z "line": 369 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6306054Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6306159Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6306297Z "path": "crates/spt-store/src/proc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6306406Z "line": 383 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6306517Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6306622Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6306764Z "path": "crates/spt-store/src/proc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6306875Z "line": 392 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6306978Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6307083Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6307230Z "path": "crates/spt-store/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6307342Z "line": 195 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6307442Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6307553Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6307704Z "path": "crates/spt-store/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6307800Z "line": 208 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6307910Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6308019Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6308163Z "path": "crates/spt-store/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6308273Z "line": 271 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6308367Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6308478Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6308620Z "path": "crates/spt-store/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6308744Z "line": 290 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6308850Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6309054Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6309197Z "path": "crates/spt-store/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6309311Z "line": 319 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6309408Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6309507Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6309607Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6309709Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6309808Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6309902Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6310045Z "id": "REQ-HAZARD-RESTART-IDEMPOTENT", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6310350Z "title": "Idempotent/exactly-once delivery across brain restart at every broker boundary (codex #14)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6310460Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6310569Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6310674Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6310784Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6310884Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6310999Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6311108Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6311222Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6311338Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6311437Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6311537Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6311643Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6314864Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6314991Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6315133Z "path": "crates/spt-daemon/src/brain.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6315247Z "line": 474 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6315360Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6315479Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6315627Z "path": "crates/spt-daemon/src/brain.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6315966Z "line": 916 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6316074Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6316180Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6316332Z "path": "crates/spt-daemon/src/brain.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6316437Z "line": 961 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6316647Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6316752Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6316900Z "path": "crates/spt-daemon/src/brain.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6317014Z "line": 986 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6317120Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6317219Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6317358Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6317473Z "line": 1760 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6317576Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6317671Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6317814Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6317916Z "line": 2005 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6318041Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6318156Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6318379Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6318560Z "line": 2136 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6318680Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6318785Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6319033Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6319147Z "line": 2184 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6319247Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6319353Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6319505Z "path": "crates/spt-daemon/src/effect.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6319605Z "line": 46 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6319711Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6319814Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6319968Z "path": "crates/spt-daemon/src/effect.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6320077Z "line": 200 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6320181Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6320292Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6320434Z "path": "crates/spt-daemon/src/wan.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6320556Z "line": 132 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6320663Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6320762Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6320900Z "path": "crates/spt-store/src/spool.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6321016Z "line": 137 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6321115Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6321220Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6321368Z "path": "crates/spt-store/src/spool.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6321477Z "line": 183 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6321578Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6321683Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6321821Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6321927Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6322064Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6322179Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6322289Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6322465Z "path": "crates/spt-daemon/tests/idempotent.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6322580Z "line": 27 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6322693Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6322792Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6322958Z "path": "crates/spt-daemon/tests/netbroker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6323062Z "line": 148 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6323167Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6323273Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6323428Z "path": "crates/spt-daemon/tests/netstream.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6323549Z "line": 200 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6323653Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6323762Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6323868Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6323977Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6324097Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6324197Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6324302Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6324470Z "path": "crates/spt-daemon/src/effect.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6324598Z "line": 366 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6324697Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6324804Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6325090Z "path": "crates/spt-daemon/src/effect.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6325203Z "line": 398 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6325308Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6325404Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6325551Z "path": "crates/spt-daemon/src/effect.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6325746Z "line": 419 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6325854Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6325962Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6326101Z "path": "crates/spt-daemon/tests/attach.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6326215Z "line": 628 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6326315Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6326411Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6326558Z "path": "crates/spt-daemon/tests/wanmsg.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6326668Z "line": 289 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6326778Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6326873Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6327017Z "path": "crates/spt-daemon/tests/xfer.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6327126Z "line": 230 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6327240Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6327332Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6327474Z "path": "crates/spt-store/src/spool.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6327588Z "line": 526 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6327685Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6327789Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6327932Z "path": "crates/spt-store/src/spool.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6328033Z "line": 556 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6328132Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6328236Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6328336Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6328439Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6328543Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6328644Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6328801Z "id": "REQ-HAZARD-ROLLBACK-STATE-COMPAT", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6330693Z "title": "A brain must not irreversibly migrate durable state before update ready-promotion: the readiness-gated auto-rollback (ADR-0018 Q7) spawns the N-1 binary against durable state the new brain may have written, so every pre-ready write must stay N-1-readable (schema migrations gated behind ready-promotion, or written N-1-tolerant/additive). Else the first in-place schema migration silently bricks rollback (KNOWN-HAZARDS 6.8). Free now — a 2026-06-09 audit confirmed zero state-migration code exists; unmintable retroactively once a migration ships.", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6330839Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6330952Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6331055Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6331160Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6331271Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6331379Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6331480Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6331585Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6331694Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6331795Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6331928Z "path": "docs/KNOWN-HAZARDS.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6332037Z "line": 314 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6332129Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6332233Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6332342Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6332453Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6332571Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6332676Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6332778Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6332948Z "path": "crates/spt-daemon/src/rollback_compat.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6333068Z "line": 33 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6333169Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6333272Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6333434Z "path": "crates/spt-daemon/src/rollback_compat.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6333546Z "line": 39 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6333655Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6333761Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6333871Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6333975Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6334085Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6334195Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6334304Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6334415Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6334632Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6334744Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6334848Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6335005Z "path": "crates/spt-daemon/src/rollback_compat.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6335114Z "line": 95 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6335224Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6335420Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6335525Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6335631Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6335735Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6335830Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6335964Z "id": "REQ-HAZARD-ROSTER-GHOST", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6338512Z "title": "A LOCAL subnet roster entry whose backing perch is erased does NOT keep advertising Active (no phantom perch-less endpoint). `api session-end --erase` removes the perch (owlery dir gone) but the subnet roster (identity/registry/.json) keeps the endpoint's instance row ACTIVE with no backing perch; `endpoint stop` says 'address unregistered' yet the line persists; no CLI verb forgets a roster entry, and a hand-edit is re-added by the single-writer daemon advertiser. FIX: daemon-side self-heal — the advertiser DROPS/forgets a LOCAL roster entry whose backing perch no longer exists (stops advertising it Active), and/or a `forget`/evict verb; verify whether the epoch lease eventually evicts it (slow-self-heal) vs a real leak and scope accordingly. doyle secondary finding (perri). (post-v0.10.0)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6338645Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6338758Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6338863Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6339037Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6339137Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6339243Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6339357Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6339475Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6339567Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6339676Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6339790Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6339896Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6340005Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6340163Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6340272Z "line": 488 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6340376Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6340478Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6340582Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6340686Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6340802Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6340911Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6341016Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6341112Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6341225Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6341335Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6341441Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6341596Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6341706Z "line": 1466 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6341816Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6341920Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6342020Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6342122Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6342226Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6342330Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6342460Z "id": "REQ-HAZARD-SELF-ELEVATE", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6344703Z "title": "Self-elevation (REQ-ELEVATE-1) re-runs the EXACT original invocation with the binary's ABSOLUTE exe path — never widening privilege scope, never adding/altering args, never via a PATH-resolved bare name, never via a shell-interpolated command string (argv-array only, no `sh -c`); the elevated child drops state back to the user (composes with the 5.7 de-elevation) and NEVER re-elevates (loop-safe: decide_elevation_path returns AlreadyElevated whenever the process is already Elevated, on every OS). The user's UAC/polkit/sudo prompt is the only consent gate — we never bypass it; the print-hint floor prints the absolute-path command too. The unprivileged parent never depends on (pipes/captures) the privileged child's stdout.", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6344826Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6344931Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6345036Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6345270Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6345379Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6345493Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6345604Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6345708Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6345818Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6346027Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6346142Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6346244Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6346380Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6346486Z "line": 3520 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6346596Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6346699Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6346837Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6346946Z "line": 3572 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6347050Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6347159Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6347284Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6347402Z "line": 3617 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6347493Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6347603Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6347754Z "path": "crates/spt/src/elevation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6347870Z "line": 92 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6347975Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6348079Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6348227Z "path": "crates/spt/src/elevation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6348337Z "line": 148 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6348447Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6348552Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6348680Z "path": "crates/spt/src/elevation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6348786Z "line": 192 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6348890Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6349063Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6349200Z "path": "crates/spt/src/elevation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6349318Z "line": 200 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6349423Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6349522Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6349654Z "path": "crates/spt/src/elevation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6349760Z "line": 211 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6349870Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6349978Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6350118Z "path": "crates/spt/src/elevation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6350222Z "line": 265 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6350331Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6350437Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6350565Z "path": "crates/spt/src/elevation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6350680Z "line": 279 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6350770Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6350871Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6350980Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6351081Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6351200Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6351300Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6351405Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6351514Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6351634Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6351743Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6351848Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6351978Z "path": "crates/spt/src/elevation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6352077Z "line": 419 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6352180Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6352280Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6352420Z "path": "crates/spt/src/elevation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6352542Z "line": 470 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6352643Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6352749Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6352876Z "path": "crates/spt/src/elevation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6352997Z "line": 499 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6353097Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6353196Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6353330Z "path": "crates/spt/src/elevation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6353440Z "line": 526 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6353544Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6353636Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6353740Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6353835Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6354035Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6354145Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6354289Z "id": "REQ-HAZARD-SINGLE-PATH-SOURCE", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6354506Z "title": "Single path/registry source of truth; no layout ambiguity (6.1)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6354625Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6354828Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6354929Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6355033Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6355143Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6355248Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6355362Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6355477Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6355582Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6355691Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6355802Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6355915Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6356020Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6356183Z "path": "crates/spt-store/src/contextstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6356293Z "line": 62 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6356406Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6356513Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6356668Z "path": "crates/spt-store/src/contextstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6356784Z "line": 71 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6356883Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6356988Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6357147Z "path": "crates/spt-store/src/contextstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6357255Z "line": 80 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6357358Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6357455Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6357610Z "path": "crates/spt-store/src/contextstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6357715Z "line": 88 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6357825Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6357929Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6358078Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6358183Z "line": 33 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6358277Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6358378Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6358525Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6358634Z "line": 65 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6358736Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6358840Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6359060Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6359356Z "line": 74 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6359579Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6359713Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6359921Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6360049Z "line": 93 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6360181Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6360305Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6360496Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6360630Z "line": 102 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6360744Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6360872Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6361049Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6361196Z "line": 111 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6361335Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6361483Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6361650Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6361783Z "line": 122 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6361909Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6362036Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6362214Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6362355Z "line": 140 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6362475Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6362600Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6362764Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6362898Z "line": 149 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6363022Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6363141Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6363314Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6363446Z "line": 158 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6363576Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6363699Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6363871Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6364229Z "line": 169 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6364348Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6364473Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6364643Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6364773Z "line": 177 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6365015Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6365145Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6365324Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6365453Z "line": 186 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6365584Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6365703Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6365880Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6366013Z "line": 195 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6366147Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6366275Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6366448Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6366589Z "line": 204 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6366719Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6366848Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6367025Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6367157Z "line": 216 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6367291Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6367416Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6367592Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6367722Z "line": 223 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6367848Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6367962Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6368136Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6368270Z "line": 232 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6368394Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6368522Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6368685Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6368813Z "line": 239 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6368933Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6369137Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6369301Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6369429Z "line": 306 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6369553Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6369672Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6369878Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6370010Z "line": 318 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6370149Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6370269Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6370438Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6370572Z "line": 405 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6370679Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6370807Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6370928Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6371060Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6371205Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6371342Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6371476Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6371595Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6371728Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6371863Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6372000Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6372173Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6372296Z "line": 487 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6372425Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6372553Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6372725Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6372863Z "line": 528 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6372973Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6373079Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6373211Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6373329Z "line": 541 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6373435Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6373535Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6373677Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6373788Z "line": 627 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6373897Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6374001Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6374107Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6374207Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6374417Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6374517Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6374645Z "id": "REQ-HAZARD-SOFT-CLEANUP", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6374889Z "title": "Soft-cleanup preserves state, removes only the ready marker (6.2)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6375004Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6375188Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6375289Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6375390Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6375499Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6375607Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6375717Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6375830Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6375934Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6376045Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6376163Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6376272Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6376379Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6376520Z "path": "crates/spt-msg/src/ready.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6376636Z "line": 175 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6376750Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6376854Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6376998Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6377107Z "line": 171 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6377203Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6377303Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6377403Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6377512Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6377623Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6377741Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6377851Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6377957Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6378075Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6378181Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6378286Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6378427Z "path": "crates/spt-msg/src/ready.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6378542Z "line": 297 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6378645Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6378748Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6378897Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6379087Z "line": 836 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6379188Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6379293Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6379445Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6379551Z "line": 849 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6379660Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6379760Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6379866Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6379975Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6380079Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6380190Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6380327Z "id": "REQ-HAZARD-STALE-INDEX-LOCK", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6380495Z "title": "Sweep stale lockfiles on daemon boot (1.3)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6380617Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6380714Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6380825Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6380927Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6381036Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6381142Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6381254Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6381372Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6381464Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6381578Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6381687Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6381807Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6381907Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6382060Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6382174Z "line": 116 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6382278Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6382389Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6382537Z "path": "crates/spt-store/src/branchstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6382655Z "line": 507 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6382766Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6382865Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6382970Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6383067Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6383190Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6383300Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6383405Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6383514Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6383720Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6383828Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6383927Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6384086Z "path": "crates/spt-store/src/branchstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6384195Z "line": 541 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6384415Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6384519Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6384620Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6384729Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6384829Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6384934Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6385082Z "id": "REQ-HAZARD-STALE-SIGNOFF-SENTINEL", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6385278Z "title": "Stale signoff sentinel does not kill a fresh start (3.2)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6385396Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6385496Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6385603Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6385706Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6385816Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6385922Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6386040Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6386163Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6386267Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6386375Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6386489Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6386605Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6386709Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6386881Z "path": "crates/spt-daemon/src/lifecycle.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6386986Z "line": 552 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6387090Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6387196Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6387348Z "path": "crates/spt-live/src/signoff.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6387458Z "line": 28 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6387549Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6387653Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6387758Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6387863Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6387987Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6388092Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6388193Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6388301Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6388421Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6388531Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6388635Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6388780Z "path": "crates/spt-live/src/signoff.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6388884Z "line": 229 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6389107Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6389201Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6389299Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6389405Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6389505Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6389614Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6389748Z "id": "REQ-HAZARD-STDIN-SESSION-ID", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6389919Z "title": "Stdin session_id precedence over env (2.2)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6390029Z "requiredStages": [], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6390144Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6390253Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6390358Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6390468Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6390573Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6390693Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6390807Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6390925Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6391031Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6391131Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6391250Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6391356Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6391460Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6391568Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6391682Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6391800Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6391904Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6392009Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6392110Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6392214Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6392354Z "id": "REQ-HAZARD-SUBPROCESS-TIMEOUT", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6392529Z "title": "Every harness/git subprocess has a timeout (5.3)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6392649Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6392754Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6392858Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6393063Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6393168Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6393274Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6393392Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6393497Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6393598Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6393697Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6393908Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6394021Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6394122Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6394261Z "path": "crates/spt-live/src/turn.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6394368Z "line": 19 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6394468Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6394574Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6394721Z "path": "crates/spt-runtime/src/runtime.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6394836Z "line": 463 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6394941Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6395040Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6395190Z "path": "crates/spt-runtime/src/runtime.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6395299Z "line": 499 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6395398Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6395504Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6395651Z "path": "crates/spt-runtime/src/runtime.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6395765Z "line": 547 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6395871Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6395980Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6396124Z "path": "crates/spt-store/src/gitrun.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6396243Z "line": 15 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6396347Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6396453Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6396590Z "path": "crates/spt-store/src/gitrun.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6396704Z "line": 48 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6396809Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6396898Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6397044Z "path": "crates/spt-store/src/gitrun.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6397150Z "line": 119 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6397260Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6397359Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6397494Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6397612Z "line": 3948 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6397713Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6397823Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6397922Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6398037Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6398156Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6398270Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6398381Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6398485Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6398595Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6398701Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6398804Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6399044Z "path": "crates/spt-runtime/src/runtime.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6399162Z "line": 765 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6399272Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6399373Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6399524Z "path": "crates/spt-store/src/gitrun.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6399633Z "line": 165 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6399742Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6399836Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6399984Z "path": "crates/spt-store/src/gitrun.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6400099Z "line": 175 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6400193Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6400299Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6400404Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6404215Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6404334Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6404430Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6404577Z "id": "REQ-HAZARD-SUDO-SECURE-PATH", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6405554Z "title": "Elevation guidance on Unix names the binary's ABSOLUTE path under sudo (a user-local install ~/.local/bin · ~/.cargo/bin is not on sudo's secure_path, so bare `sudo spt` dies 'command not found'); gated commands auto-elevate on an interactive TTY, else print the runnable hint (5.10)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6405663Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6405774Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6405878Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6406140Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6406249Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6406360Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6406474Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6406593Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6406689Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6406793Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6407004Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6407113Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6407222Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6407364Z "path": "crates/spt/src/elevation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6407477Z "line": 192 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6407585Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6407691Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6407829Z "path": "crates/spt/src/elevation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6407924Z "line": 279 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6408040Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6408139Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6408234Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6408336Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6408440Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6408544Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6408646Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6408755Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6408859Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6409059Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6409155Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6409299Z "path": "crates/spt/src/elevation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6409402Z "line": 470 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6409507Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6409600Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6409727Z "path": "crates/spt/src/elevation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6409837Z "line": 526 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6409938Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6410041Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6410145Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6410251Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6410353Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6410457Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6410597Z "id": "REQ-HAZARD-TEMPLATE-ARGV-FILL", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6414575Z "title": "Command-template substitution fills argv ELEMENTS, not a re-tokenized string: spt-core currently `fill_template`s {key} values INTO the command STRING and THEN `tokenize`s the filled string (runtime.rs:94/122), so a multi-word {key} value whitespace-SPLITS into multiple argv tokens unless the adapter hand-quotes the placeholder, and a value containing a `\"` (or `;`) injects/breaks tokenization (shell-injection-adjacent). A filled value MUST become exactly ONE argv element regardless of spaces/quotes in the value. Fix: tokenize the TEMPLATE into argv FIRST, then `fill_template` EACH token, so a `{key}` slot resolves to a single element and the value never participates in tokenization (no whitespace-split, no quote/semicolon injection); preserve the missing-key / empty-command errors and `{{`/`}}` non-interpretation. perri's F-009 (v0.8.1 dogfood, argv-capture-confirmed): a multi-word `{psyche_prompt}` = \"PSYCHE REVIVAL time: epoch-ms:… incoming event: (none)\" arrived as argv[6..12] (7 stray tokens), the harness runner strict-parsed `--prompt` against the 2nd word, exited 2 within ~1s → phantom hosted perch. Applies to EVERY [session.] template (psyche_init, extractor, notif, …); digest survives today only because its fills ({session_id}/{source}) are single-token.", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6414713Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6414818Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6414922Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6415019Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6415123Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6415223Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6415329Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6415447Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6415556Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6415661Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6415762Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6415875Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6415976Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6416075Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6416232Z "path": "crates/spt-daemon/src/harnesshost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6416448Z "line": 116 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6416557Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6416658Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6416814Z "path": "crates/spt-daemon/src/shellhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6416925Z "line": 132 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6417115Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6417220Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6417367Z "path": "crates/spt-daemon/src/shellwake.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6417472Z "line": 434 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6417578Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6417682Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6417819Z "path": "crates/spt-runtime/src/runtime.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6417929Z "line": 139 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6418032Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6418127Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6418266Z "path": "crates/spt-runtime/src/runtime.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6418370Z "line": 326 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6418479Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6418576Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6418723Z "path": "crates/spt-runtime/src/runtime.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6418843Z "line": 555 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6419033Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6419138Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6419243Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6419348Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6419457Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6419563Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6419667Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6419840Z "path": "crates/spt/tests/livehost_nonresident_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6419944Z "line": 32 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6420044Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6420136Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6420235Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6420344Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6420460Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6420564Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6420668Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6420811Z "path": "crates/spt-runtime/src/runtime.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6420918Z "line": 625 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6421017Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6421123Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6421266Z "path": "crates/spt-runtime/src/runtime.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6421366Z "line": 646 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6421467Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6421571Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6421719Z "path": "crates/spt-runtime/src/runtime.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6421829Z "line": 662 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6421928Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6422039Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6422177Z "path": "crates/spt-runtime/src/runtime.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6422282Z "line": 680 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6422383Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6422487Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6422629Z "path": "crates/spt-runtime/src/runtime.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6422740Z "line": 704 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6422844Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6422944Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6423046Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6423145Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6423253Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6423354Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6423490Z "id": "REQ-HAZARD-UNC-PATH-STRIP", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6423671Z "title": "Strip Windows UNC prefix on serialized paths (5.4)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6423777Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6423889Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6423991Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6424100Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6424209Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6424301Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6424419Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6424519Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6424625Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6424734Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6424843Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6424950Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6425167Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6425317Z "path": "crates/spt-store/src/atomic.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6425425Z "line": 35 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6425526Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6425617Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6425711Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6425899Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6426017Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6426125Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6426221Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6426317Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6426430Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6426550Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6426650Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6426792Z "path": "crates/spt-store/src/atomic.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6426908Z "line": 220 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6427008Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6427107Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6427208Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6427312Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6427412Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6427513Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6427651Z "id": "REQ-HAZARD-UNHOST-PSYCHE-REAP", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6430972Z "title": "On un-host, the detached `{id}-psyche` HARNESS PROCESS is reaped — not just its in-brain pulse-driver thread. Today stop_host (livehost.rs:203) trips the HostedLife stop flag + JOINS the driver thread, but the Psyche is a detached harness process (spawn_psyche → ManifestRuntime detached spawn, runtime.rs:341-356; its pid is untracked in HostedLife though stamped on the `{id}-psyche` perch, where residency-confirm already reads it). So endpoint-stop / mid-life agent-death / a B2/B5 offline-then-unhost leaves the psyche process ORPHANED, alive until the next daemon-stop (where Breap's job/group reaps the whole brain subtree). The Psyche STAYS a harness process by design (CONTEXT.md 97/203/251 — headless harness session, its own perch) — the fix does NOT move it in-brain; it SCOPED-kills the `{id}-psyche` pid on un-host (never machine-wide — shared box). Track the pid in HostedLife at host_one (cleanest) or read the `{id}-psyche` perch pid at stop_host. Composes with H3 (endpoint stop → offline → reconcile un-host → reap) and B2/B5 (the offline arms that trigger un-host). (v0.12.0)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6431101Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6431204Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6431309Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6431413Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6431516Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6431626Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6431731Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6431840Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6431960Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6432051Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6432155Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6432275Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6432379Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6432488Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6432643Z "path": "crates/spt-daemon/src/lifecycle.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6432756Z "line": 202 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6432851Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6432962Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6433109Z "path": "crates/spt-live/src/psyche.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6433204Z "line": 107 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6433305Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6433409Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6433549Z "path": "crates/spt-live/src/psyche.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6433648Z "line": 138 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6433757Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6433861Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6434012Z "path": "crates/spt-runtime/src/runtime.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6434121Z "line": 209 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6434221Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6434327Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6434468Z "path": "crates/spt-runtime/src/runtime.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6434579Z "line": 246 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6434689Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6434788Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6435046Z "path": "crates/spt-runtime/src/runtime.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6435151Z "line": 379 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6435256Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6435352Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6435451Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6435562Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6435761Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6435872Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6435976Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6436144Z "path": "crates/spt/tests/unhost_psyche_reap_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6436252Z "line": 17 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6436358Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6436459Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6436558Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6436666Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6436781Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6436896Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6436990Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6437139Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6437244Z "line": 982 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6437343Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6437449Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6437549Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6437653Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6437754Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6437858Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6437996Z "id": "REQ-HAZARD-UPDATE-ROLLBACK", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6438278Z "title": "Self-update rejects version rollback; metadata expiry + adapter content signing (codex #5)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6438398Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6438507Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6438611Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6438718Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6438817Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6438926Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6439120Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6439233Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6439334Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6439434Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6439542Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6439653Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6439753Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6439905Z "path": "crates/spt-daemon/src/propagate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6440011Z "line": 405 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6440106Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6440205Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6440355Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6440454Z "line": 409 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6440559Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6440660Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6440807Z "path": "crates/spt-daemon/src/update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6440907Z "line": 156 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6441013Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6441117Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6441217Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6441323Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6441426Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6441542Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6441638Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6441745Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6441849Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6441955Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6442057Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6442201Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6442301Z "line": 865 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6442396Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6442500Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6442649Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6442753Z "line": 879 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6442859Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6442954Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6443092Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6443203Z "line": 898 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6443306Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6443411Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6443551Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6443649Z "line": 915 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6443842Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6443950Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6444104Z "path": "crates/spt-daemon/tests/propagate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6444213Z "line": 441 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6444321Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6444503Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6444605Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6444709Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6444815Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6444906Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6445048Z "id": "REQ-HAZARD-VIEWER-CLOSE-DETACH", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6455091Z "title": "A VIEW is independent from the endpoint: closing the tab/window where `spt endpoint run` was invoked must detach ONLY the `spt rc` attach pump — the daemon-hosted harness keeps running and stays re-attachable via `spt rc `. ROOT (Windows, v0.12.0 real-harness defect): the daemon never breaks away from the launching terminal's Job Object. Windows Terminal / VS Code place the launched shell AND every descendant into a Job Object with JOB_OBJECT_LIMIT_KILL_ON_JOB_CLOSE; closing the tab drops the terminal's last job handle → the OS terminates every process still in that job. A child escapes only with CREATE_BREAKAWAY_FROM_JOB — used NOWHERE in the tree. Both daemon spawn paths (daemon.rs:707 detached_no_inherit = DETACHED_PROCESS|CREATE_NEW_PROCESS_GROUP|CREATE_NO_WINDOW; deelevate.rs:519 elevated = CREATE_NEW_CONSOLE|...) drop the CONSOLE but NOT job membership, so the daemon's freshly broker-spawned ConPTY harness subtree is reaped on tab-close. The ConPTY/pseudoconsole isolation itself is CORRECT (portable-pty builds the pseudoconsole in the daemon; no console signal / handle leak) — the leaking lifetime binding is the Job Object, not the console. FIX: add CREATE_BREAKAWAY_FROM_JOB to both daemon spawn paths AND pin each broker-spawned harness into a DAEMON-OWNED Job Object (mirror reap.rs/Breap) as backstop (survives even where a terminal sets SILENT_BREAKAWAY_OK=false). Unix: the daemon's own session detachment (new session, no controlling terminal) already keeps a closing terminal's SIGHUP off its children — verify, add a guard test, no code expected. FIX UPDATE (v0.12.1 L1.5, doyle re-scope operator-approved 2026-06-18): job-neutral daemon launch is now PRIMARY, breakaway DEMOTED to a fallback rung. ROOT reframed — the daemon INHERITS the terminal's Job because spawn_detached runs FROM the terminal-child CLI (DETACHED_PROCESS detaches the console, not the job); breakaway tried to claw back out but a job CAN deny it (the L1 finding). FIX: launch the cold-started daemon via a job-NEUTRAL creator so it is WmiPrvSE/Task-Scheduler-owned, OUTSIDE any terminal job from birth (why Task-Scheduler-autostarted daemons never had this bug). Launcher ladder (first-success-wins, daemon.rs spawn_detached → BOTH cold-start AND `spt daemon start`): (1) WMI Win32_Process.Create via ABSOLUTE powershell -EncodedCommand (KH 5.12 abs path; base64-UTF16LE dodges all quoting; success requires BOTH ReturnValue==0 AND a parsed ProcessId, else fall-through — never a silent launched), forwarding SPT_* env via a `cmd /c set … & start /b` wrapper because a WMI/scheduler child does NOT inherit transient shell env (verified — SPT_HOME would be lost, wrong universe); (2) schtasks one-shot (same env wrapper; best-effort fallback); (3) CREATE_BREAKAWAY_FROM_JOB (the L1 code, reordered below); (4) in-job last resort (logs DETACH_IN_JOB + tab-close caveat). detached_no_inherit (breakaway-then-in-job) is UNCHANGED for its other caller shellhost::launch_shell (a daemon-spawned shell is already job-neutral once the daemon is). The elevated deelevate path keeps its L1 breakaway for now (elevated-case WMI-reparent = FOLLOW-UP). (v0.12.1)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6455251Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6455356Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6455462Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6455570Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6455666Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6455766Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6455875Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6456081Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6456204Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6456310Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6456409Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6456534Z "path": "CONTEXT.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6456645Z "line": 420 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6456843Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6456940Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6457072Z "path": "docs/KNOWN-HAZARDS.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6457187Z "line": 402 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6457284Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6457391Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6457492Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6457594Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6457692Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6457801Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6457906Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6458054Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6458173Z "line": 797 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6458269Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6458369Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6458507Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6458617Z "line": 822 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6458721Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6458822Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6459045Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6459155Z "line": 839 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6459251Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6459356Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6459505Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6459622Z "line": 854 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6459723Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6459829Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6459975Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6460093Z "line": 874 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6460198Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6460292Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6460439Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6460550Z "line": 964 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6460649Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6460753Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6460897Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6461015Z "line": 1016 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6461117Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6461221Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6461359Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6461470Z "line": 1075 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6461565Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6461674Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6461827Z "path": "crates/spt-daemon/src/deelevate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6461937Z "line": 527 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6462042Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6462137Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6462247Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6462352Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6462471Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6462585Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6462681Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6462837Z "path": "crates/spt/tests/job_escape_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6462941Z "line": 35 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6463051Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6463154Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6463311Z "path": "crates/spt/tests/job_escape_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6463421Z "line": 569 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6463525Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6463630Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6463764Z "path": "crates/spt/tests/job_escape_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6463873Z "line": 590 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6463975Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6464074Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6464174Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6464279Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6464399Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6464503Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6464604Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6464741Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6464976Z "line": 1202 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6465079Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6465185Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6465334Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6465446Z "line": 1246 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6465637Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6465744Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6465888Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6465993Z "line": 1260 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6466101Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6466207Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6466346Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6466464Z "line": 1278 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6466556Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6466660Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6466802Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6466909Z "line": 1302 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6467018Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6467113Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6467261Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6467361Z "line": 1529 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6467471Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6467571Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6467680Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6467786Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6467877Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6467985Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6468106Z "id": "REQ-HAZARD-VIEWER-ISOLATION", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6470431Z "title": "A slow / dead / hostile VIEWER must NEVER stall the controller, the PTY child, or the session drain thread. The broker drain fans output to the controller on the authoritative blocking bounded path (advances delivered_through) but to each viewer via a bounded per-viewer channel with a dedicated writer thread; the drain `try_send`s under the log lock and a viewer whose bounded queue OVERFLOWS (can't keep up) is EVICTED (queue dropped, writer thread ends, removed from the viewers map) — the drain thread NEVER touches a viewer socket, so no viewer write can backpressure or block it. A soft viewer cap bounds the thread count. Viewer eviction never perturbs the controller stream, the delivered_through cursor, or the child.", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6470554Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6470672Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6470772Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6470871Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6470970Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6471071Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6471190Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6471295Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6471405Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6471528Z "path": "docs/KNOWN-HAZARDS.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6471633Z "line": 381 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6471734Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6471838Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6471939Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6472044Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6472158Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6472263Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6472373Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6472511Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6472617Z "line": 135 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6472716Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6472816Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6472922Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6473031Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6473145Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6473256Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6473360Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6473506Z "path": "crates/spt-daemon/tests/attach.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6473620Z "line": 1042 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6473728Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6473833Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6473943Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6474048Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6474162Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6474268Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6474481Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6474625Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6474734Z "line": 2370 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6474839Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6474940Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6475049Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6475240Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6475344Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6475440Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6475579Z "id": "REQ-HAZARD-WAN-ORIGIN-AUTH", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6476448Z "title": "WAN-inbound origin is transport truth, never payload: the access gate's subject (ADR-0009 origin-node whitelist) is the QUIC handshake-proven remote node id from the broker's conn/stream table — a forged origin/node field inside record bytes is inert (7.5)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6476568Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6476666Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6476777Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6476881Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6476990Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6477101Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6477201Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6477315Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6477426Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6477530Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6477663Z "path": "docs/KNOWN-HAZARDS.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6477784Z "line": 366 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6477883Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6477988Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6478089Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6478197Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6478307Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6478423Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6478521Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6478671Z "path": "crates/spt-daemon/src/access.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6478789Z "line": 87 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6478893Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6479089Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6479226Z "path": "crates/spt-daemon/src/attach.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6479346Z "line": 105 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6479456Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6479560Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6479714Z "path": "crates/spt-daemon/src/dispatch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6479818Z "line": 55 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6479917Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6480024Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6480165Z "path": "crates/spt-daemon/src/linkhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6480276Z "line": 31 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6480381Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6480480Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6480625Z "path": "crates/spt-daemon/src/linkhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6480728Z "line": 446 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6480833Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6480939Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6481090Z "path": "crates/spt-daemon/src/notifsync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6481190Z "line": 95 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6481300Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6481402Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6481550Z "path": "crates/spt-daemon/src/propagate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6481660Z "line": 29 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6481765Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6481870Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6482013Z "path": "crates/spt-daemon/src/propagate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6482131Z "line": 104 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6482233Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6482342Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6482499Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6482599Z "line": 208 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6482708Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6482809Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6482952Z "path": "crates/spt-daemon/src/resthost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6483061Z "line": 28 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6483162Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6483262Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6483400Z "path": "crates/spt-daemon/src/resthost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6483614Z "line": 74 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6483715Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6483821Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6483972Z "path": "crates/spt-daemon/src/serveprobe.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6484090Z "line": 32 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6484279Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6484383Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6484528Z "path": "crates/spt-daemon/src/sync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6484637Z "line": 40 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6484741Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6484842Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6484989Z "path": "crates/spt-daemon/src/sync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6485095Z "line": 184 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6485190Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6485294Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6485419Z "path": "crates/spt-daemon/src/wan.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6485538Z "line": 61 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6485638Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6485739Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6485876Z "path": "crates/spt-daemon/src/wan.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6485986Z "line": 131 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6486091Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6486195Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6486339Z "path": "crates/spt-daemon/src/xfer.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6486449Z "line": 223 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6486557Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6486661Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6486809Z "path": "crates/spt-net/src/net/sync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6486907Z "line": 37 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6487013Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6487113Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6487250Z "path": "crates/spt-net/src/net/update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6487361Z "line": 38 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6487466Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6487570Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6487723Z "path": "crates/spt-net/src/net/wanmsg.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6487828Z "line": 36 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6487933Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6488034Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6488171Z "path": "crates/spt-net/src/net/xfer.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6488286Z "line": 40 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6488386Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6488500Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6488596Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6488706Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6488829Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6488935Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6489130Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6489236Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6489354Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6489457Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6489567Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6489716Z "path": "crates/spt-daemon/src/notifsync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6489820Z "line": 212 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6489920Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6490011Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6490177Z "path": "crates/spt-daemon/tests/notifsync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6490288Z "line": 136 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6490392Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6490497Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6490645Z "path": "crates/spt-daemon/tests/propagate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6490768Z "line": 685 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6490855Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6490959Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6491107Z "path": "crates/spt-daemon/tests/sync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6491218Z "line": 224 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6491316Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6491412Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6491566Z "path": "crates/spt-daemon/tests/wanmsg.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6491665Z "line": 206 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6491773Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6491874Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6492015Z "path": "crates/spt-net/src/net/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6492220Z "line": 112 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6492325Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6492430Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6492563Z "path": "crates/spt-net/src/net/sync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6492677Z "line": 157 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6492773Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6492977Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6493127Z "path": "crates/spt-net/src/net/update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6493236Z "line": 215 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6493345Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6493446Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6493593Z "path": "crates/spt-net/src/net/wanmsg.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6493698Z "line": 141 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6493808Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6493917Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6494047Z "path": "crates/spt-net/src/net/xfer.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6494151Z "line": 162 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6494256Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6494357Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6494452Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6494565Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6494665Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6494760Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6494910Z "id": "REQ-HAZARD-WIN-PTY-PROGRAM-RESOLVE", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6496842Z "title": "Native-PTY spawn must resolve a bare program name with PATHEXT precedence and run a non-PE target through its interpreter: portable-pty's own `which` takes the FIRST PATH match — an extensionless shebang shim (e.g. a node CLI `ccs` shipped beside `ccs.cmd`) — and CreateProcessW then rejects the non-PE file with os error 193 ('not a valid Win32 application'); spt-term resolves the program itself (PATHEXT order prefers .EXE over .CMD; .cmd/.bat → cmd.exe /d /c, .ps1 → powershell -NoProfile -File) so a bare harness/shell [session.self] command actually launches on Windows. Unix is a passthrough (execve honours the shebang).", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6496967Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6497075Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6497188Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6497293Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6497397Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6497500Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6497606Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6497712Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6497825Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6497936Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6498045Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6498178Z "path": "docs/KNOWN-HAZARDS.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6498274Z "line": 250 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6498379Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6498483Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6498589Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6498693Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6498817Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6498913Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6499079Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6499218Z "path": "crates/spt-term/src/pty.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6499322Z "line": 135 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6499427Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6499533Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6499670Z "path": "crates/spt-term/src/pty.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6499781Z "line": 157 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6499886Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6499994Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6500098Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6500205Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6500318Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6500422Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6500524Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6500680Z "path": "crates/spt-term/tests/winspawn.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6500786Z "line": 15 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6500885Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6500985Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6501086Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6501200Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6501309Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6501420Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6501525Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6501778Z "path": "crates/spt-term/src/winprog.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6501891Z "line": 233 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6501997Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6504878Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6505008Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6505115Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6505220Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6505470Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6505628Z "id": "REQ-HAZARD-WINDOWS-PID-RECYCLE", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6505818Z "title": "Windows PID-recycling false positives guarded (5.1)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6505939Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6506043Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6506152Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6506258Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6506358Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6506467Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6506587Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6506691Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6506791Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6506893Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6507006Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6507110Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6507212Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6507354Z "path": "crates/spt-msg/src/deliver.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6507460Z "line": 95 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6507564Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6507668Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6507810Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6507919Z "line": 117 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6508023Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6508123Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6508224Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6508319Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6508428Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6508534Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6508633Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6508743Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6508843Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6509043Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6509139Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6509282Z "path": "crates/spt-msg/src/deliver.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6509392Z "line": 250 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6509492Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6509597Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6509736Z "path": "crates/spt-store/src/proc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6509844Z "line": 412 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6509945Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6510051Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6510192Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6510293Z "line": 611 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6510394Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6510488Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6510630Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6510740Z "line": 669 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6510841Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6510949Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6511050Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6511141Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6511235Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6511342Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6511475Z "id": "REQ-HAZARD-WMI-DAEMON-WINDOW", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6514022Z "title": "`spt daemon start` launches the daemon with NO visible console window. REGRESSION (v0.12.1 L1.5): the WMI job-neutral launch (spawn_daemon_via_wmi) set CREATE_NO_WINDOW on the launching powershell but NOT on the Win32_Process.Create call — Win32_Process.Create does not inherit it, so the spawned cmd.exe env-forwarding wrapper popped a console window on every cold-start (violating REQ-INSTALL-10's v0.7.4 no-persistent-window invariant; the old detached_no_inherit path set DETACHED_PROCESS|CREATE_NO_WINDOW). FIX: pass a Win32_ProcessStartup with CreateFlags=DETACHED_PROCESS (0x8 — no console so no window; CREATE_NO_WINDOW 0x08000000 is NOT a valid Win32_ProcessStartup flag → ReturnValue 21 invalid-param, which is why the naive port fails) + ShowWindow=SW_HIDE(0) belt, via the ProcessStartupInformation argument. (v0.12.2)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6514141Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6514346Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6514455Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6514552Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6514660Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6514765Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6514867Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6514989Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6515191Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6515295Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6515400Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6515506Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6515614Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6515719Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6515866Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6515969Z "line": 925 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6516068Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6516174Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6516307Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6516416Z "line": 994 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6516518Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6516626Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6516721Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6516823Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6516932Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6517041Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6517148Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6517294Z "path": "crates/spt/tests/job_escape_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6517409Z "line": 187 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6517509Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6517609Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6517753Z "path": "crates/spt/tests/job_escape_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6517857Z "line": 348 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6517962Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6518063Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6518167Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6518266Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6518380Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6518489Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6518588Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6518727Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6518841Z "line": 1206 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6519012Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6519113Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6519236Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6519347Z "line": 8116 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6519447Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6519551Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6519647Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6519737Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6519842Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6519942Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6520076Z "id": "REQ-HAZARD-WORKER-PATH", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6520291Z "title": "Single source of truth for Worker/Psyche perch location (1.5)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6520409Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6520514Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6520620Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6520719Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6520829Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6520921Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6521039Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6521147Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6521252Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6521358Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6521471Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6521577Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6521682Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6521829Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6521935Z "line": 262 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6522025Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6522129Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6522273Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6522378Z "line": 307 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6522487Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6522584Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6522721Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6522821Z "line": 319 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6522927Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6523035Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6523228Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6523331Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6523435Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6523559Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6523662Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6523762Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6523872Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6524071Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6524172Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6524315Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6524419Z "line": 455 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6524521Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6524620Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6524764Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6524869Z "line": 499 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6524968Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6525063Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6525160Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6525260Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6525369Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6525470Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6525593Z "id": "REQ-HOST-RUN-1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6528102Z "title": "spt-hosted harness bringup: `spt endpoint run` spawns an adapter's `[session.self]` command template into a broker-held PTY (the spawn-session seam, brain.rs spawn_session_pid — same broker path shellhost.rs launch_shell_brokered_in uses for shells, now for kind=\"harness\" self-role), registers the perch under the given endpoint id, returns the id. Reverses today's harness-hosted-only launch (external launcher → `api bind`). Non-interactive flag set (--adapter --id --create --resume --attach|--start|--view) covers every terminal action of the W2 interactive picker so shortcuts (cc-) bake fully non-interactive launches; composite adapter:profile resolves via registry::resolve_option leaf-replace overlay.", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6528236Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6528337Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6528435Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6528541Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6528643Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6528746Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6528850Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6529049Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6529148Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6529248Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6529359Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6529477Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6529582Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6529687Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6529844Z "path": "crates/spt-daemon/src/harnesshost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6529945Z "line": 30 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6530049Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6530154Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6530307Z "path": "crates/spt-daemon/src/harnesshost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6530421Z "line": 76 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6530522Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6530626Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6530779Z "path": "crates/spt-daemon/src/harnesshost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6530885Z "line": 181 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6530993Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6531079Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6531210Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6531317Z "line": 1266 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6531423Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6531529Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6531632Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6531735Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6531846Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6531947Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6532046Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6532190Z "path": "crates/spt-daemon/tests/attach.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6532294Z "line": 285 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6532389Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6532495Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6532585Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6532685Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6532791Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6532905Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6533111Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6533257Z "path": "crates/spt-daemon/src/harnesshost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6533372Z "line": 229 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6533468Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6533576Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6533725Z "path": "crates/spt-daemon/src/harnesshost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6533938Z "line": 296 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6534043Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6534143Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6534293Z "path": "crates/spt-daemon/src/harnesshost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6534399Z "line": 419 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6534509Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6534598Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6534699Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6534799Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6534894Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6534985Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6535095Z "id": "REQ-HOST-RUN-2", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6536934Z "title": "Project-scoped working directory for spt-hosted bringup: `spt endpoint run` lands the broker-spawned harness PTY in the user's PROJECT cwd, not the daemon's, via an additive `SpawnReq.cwd` field carried through the broker PTY spawn (portable-pty CommandBuilder cwd). N-1-safe wire change (additive, defaulted). Required because the consumer (Claude Code) is project-scoped: broker-inherited cwd = the daemon's cwd = the wrong `.claude`, wrong session history, wrong digest source; `cc ` at a project root MUST land the harness in that project. W1 ships broker-inherited cwd as a bringup-proof shortcut only; this REQ must land before the M12 gate (doyle, 2026-06-14).", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6537057Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6537165Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6537270Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6537376Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6537475Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6537571Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6537680Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6537799Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6537905Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6538009Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6538109Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6538229Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6538343Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6538448Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6538606Z "path": "crates/spt-daemon/src/harnesshost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6538705Z "line": 182 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6538806Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6538902Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6539130Z "path": "crates/spt-term/src/pty.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6539241Z "line": 113 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6539339Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6539429Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6539524Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6539633Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6539732Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6539851Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6539947Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6540094Z "path": "crates/spt-daemon/tests/attach.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6540205Z "line": 572 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6540299Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6540390Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6540491Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6540601Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6540704Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6540801Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6540905Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6541048Z "path": "crates/spt-term/tests/surface.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6541159Z "line": 86 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6541258Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6541358Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6541464Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6541562Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6541659Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6541755Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6541858Z "id": "REQ-INFRA-1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6542065Z "title": "GitHub issue tracking for v1; tangled.org as migration target", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6542182Z "requiredStages": [], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6542372Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6542479Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6542592Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6542697Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6542797Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6542902Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6543107Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6543221Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6543322Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6543422Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6543536Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6543651Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6543746Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6543851Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6543961Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6544071Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6544175Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6544276Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6544371Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6544461Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6544579Z "id": "REQ-INST-1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6544768Z "title": "endpoint ID vs instance split (adapter-agnostic ID)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6544877Z "requiredStages": [], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6544992Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6545087Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6545191Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6545297Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6545402Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6545506Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6545622Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6545736Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6545830Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6545936Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6546041Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6546155Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6546251Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6546351Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6546465Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6546571Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6546675Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6546775Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6546872Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6546971Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6547080Z "id": "REQ-INST-10", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6547318Z "title": "Qualified addressing [subnet:]id[@node] + ambiguity forces qualification", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6547427Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6547537Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6547635Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6547739Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6547835Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6547936Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6548044Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6548150Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6548260Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6548364Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6548479Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6548589Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6548693Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6548842Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6549032Z "line": 648 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6549152Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6549250Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6549400Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6549500Z "line": 725 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6549604Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6549705Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6549848Z "path": "crates/spt-proto/src/addr.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6549961Z "line": 13 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6550066Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6550170Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6550301Z "path": "crates/spt-proto/src/addr.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6550411Z "line": 67 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6550517Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6550621Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6550760Z "path": "crates/spt/src/wansend.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6550865Z "line": 18 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6550973Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6551080Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6551212Z "path": "crates/spt/src/wansend.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6551418Z "line": 444 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6551508Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6551613Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6551714Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6551823Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6551947Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6552252Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6552358Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6552451Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6552567Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6552668Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6552771Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6552914Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6553019Z "line": 932 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6553123Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6553228Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6553377Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6553481Z "line": 1309 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6553587Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6553691Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6553834Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6553949Z "line": 1320 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6554049Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6554153Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6554287Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6554397Z "line": 1336 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6554507Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6554607Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6554754Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6554860Z "line": 1352 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6554968Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6555073Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6555221Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6555323Z "line": 1374 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6555427Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6555533Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6555662Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6555781Z "line": 1679 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6555891Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6555991Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6556134Z "path": "crates/spt-proto/src/addr.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6556234Z "line": 130 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6556343Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6556444Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6556587Z "path": "crates/spt-proto/src/addr.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6556687Z "line": 167 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6556793Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6556901Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6557029Z "path": "crates/spt-proto/src/addr.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6557141Z "line": 175 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6557240Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6557349Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6557479Z "path": "crates/spt-proto/src/addr.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6557588Z "line": 183 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6557699Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6557804Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6557935Z "path": "crates/spt/src/wansend.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6558044Z "line": 896 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6558153Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6558262Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6558362Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6558472Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6558567Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6558676Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6558782Z "id": "REQ-INST-11", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6559121Z "title": "spt rename rippled to all instances (collision-checked, 6.5-reconciled)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6559239Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6559340Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6559444Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6559545Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6559650Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6559755Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6559859Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6559960Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6560060Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6560270Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6560380Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6560487Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6560582Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6560734Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6560929Z "line": 514 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6561034Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6561138Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6561292Z "path": "crates/spt-store/src/contextstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6561402Z "line": 297 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6561495Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6561602Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6561745Z "path": "crates/spt-store/src/rename.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6561849Z "line": 59 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6561955Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6562059Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6562187Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6562298Z "line": 5291 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6562407Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6562512Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6562645Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6562750Z "line": 7137 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6562847Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6562956Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6563060Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6563171Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6563285Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6563388Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6563493Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6563599Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6563712Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6563813Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6563922Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6564074Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6564181Z "line": 1479 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6564308Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6564403Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6564551Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6564665Z "line": 1512 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6564771Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6564876Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6565033Z "path": "crates/spt-store/src/contextstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6565144Z "line": 527 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6565247Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6565357Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6565496Z "path": "crates/spt-store/src/rename.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6565604Z "line": 160 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6565709Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6565804Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6565950Z "path": "crates/spt-store/src/rename.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6566064Z "line": 190 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6566170Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6566269Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6566408Z "path": "crates/spt-store/src/rename.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6566522Z "line": 225 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6566622Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6566728Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6566860Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6566975Z "line": 7994 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6567076Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6567180Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6567285Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6567381Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6567481Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6567581Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6567692Z "id": "REQ-INST-12", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6568002Z "title": "Endpoint visibility per-(endpoint,subnet): excluded semantics, OR-of-defaults + override, gates sync", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6568119Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6568215Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6568321Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6568429Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6568533Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6568638Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6568755Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6568859Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6569127Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6569227Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6569342Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6569446Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6569542Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6569685Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6569885Z "line": 566 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6569990Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6570095Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6570244Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6570353Z "line": 659 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6570457Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6570554Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6570705Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6570811Z "line": 739 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6570907Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6571010Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6571157Z "path": "crates/spt-store/src/subnet.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6571266Z "line": 96 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6571369Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6571474Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6571614Z "path": "crates/spt-store/src/subnet.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6571712Z "line": 269 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6571818Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6571923Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6572070Z "path": "crates/spt-store/src/visibility.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6572171Z "line": 148 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6572271Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6572380Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6572481Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6572595Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6572699Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6572806Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6572914Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6573014Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6573130Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6573238Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6573343Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6573478Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6573581Z "line": 1554 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6573692Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6573788Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6573934Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6574043Z "line": 1577 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6574149Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6574253Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6574401Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6574517Z "line": 1614 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6574620Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6574726Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6574864Z "path": "crates/spt-store/src/subnet.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6574973Z "line": 457 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6575079Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6575188Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6575341Z "path": "crates/spt-store/src/visibility.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6575450Z "line": 185 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6575559Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6575656Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6575807Z "path": "crates/spt-store/src/visibility.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6575913Z "line": 206 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6576014Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6576122Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6576264Z "path": "crates/spt-store/src/visibility.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6576383Z "line": 232 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6576486Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6576591Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6576692Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6576796Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6576901Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6577002Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6577115Z "id": "REQ-INST-13", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6577331Z "title": "Subnet-exclusive sync + per-endpoint subnet-membership list", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6577449Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6577545Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6577745Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6577850Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6577960Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6578065Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6578174Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6578285Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6578389Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6578557Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6578674Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6578785Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6578886Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6579093Z "path": "crates/spt-daemon/src/sync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6579198Z "line": 100 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6579301Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6579401Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6579554Z "path": "crates/spt-store/src/visibility.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6579654Z "line": 171 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6579758Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6579850Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6579950Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6580063Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6580179Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6580288Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6580388Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6580489Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6580598Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6580702Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6580809Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6580960Z "path": "crates/spt-store/src/visibility.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6581075Z "line": 261 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6581176Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6581275Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6581414Z "path": "crates/spt-store/src/visibility.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6581528Z "line": 279 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6581631Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6581736Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6581840Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6581948Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6582054Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6582150Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6582263Z "id": "REQ-INST-14", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6582673Z "title": "Resource advertisement (subnet resource registry): free-text blurb, both-authored, registry projection, visibility/whitelist-gated", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6582798Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6582897Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6583008Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6583113Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6583217Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6583322Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6583427Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6583537Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6583642Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6583747Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6583870Z "path": "CONTEXT.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6583986Z "line": 588 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6584085Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6584185Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6584315Z "path": "docs/STORAGE.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6584423Z "line": 49 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6584527Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6584637Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6584738Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6584846Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6584957Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6585067Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6585170Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6585334Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6585443Z "line": 410 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6585543Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6585644Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6585790Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6585902Z "line": 367 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6586001Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6586101Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6586240Z "path": "crates/spt-store/src/info.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6586349Z "line": 293 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6589335Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6589465Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6589611Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6589862Z "line": 1577 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6589971Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6590071Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6590167Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6590271Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6590386Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6590585Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6590691Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6590791Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6590905Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6591006Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6591110Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6591277Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6591397Z "line": 1163 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6591501Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6591592Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6591750Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6591859Z "line": 944 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6591965Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6592069Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6592224Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6592325Z "line": 1205 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6592428Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6592532Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6592681Z "path": "crates/spt-store/src/info.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6592790Z "line": 659 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6592895Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6592996Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6593124Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6593219Z "line": 8070 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6593324Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6593425Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6593529Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6593635Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6593729Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6593834Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6593940Z "id": "REQ-INST-15", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6594711Z "title": "Immutable home subnet (assigned at creation: auto-if-one/ask-if-many) + spt fork (cross-subnet clone to a new identity, copy-then-diverge, not re-home); adapter chosen at creation from registered hostable adapters, changed only via launch/resume-under-new (ADR-0010)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6594822Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6594932Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6595045Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6595149Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6595251Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6595360Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6595464Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6595575Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6595688Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6595793Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6595998Z "path": "docs/adr/0010-immutable-home-subnet-fork-not-rehome.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6596112Z "line": 3 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6596213Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6596318Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6596418Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6596528Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6596652Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6596747Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6596852Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6596999Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6597111Z "line": 353 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6597214Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6597323Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6597475Z "path": "crates/spt-msg/src/ready.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6597574Z "line": 60 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6597678Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6597783Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6597940Z "path": "crates/spt-store/src/contextstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6598060Z "line": 368 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6598160Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6598264Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6598418Z "path": "crates/spt-store/src/contextstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6598518Z "line": 417 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6598622Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6598803Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6599033Z "path": "crates/spt-store/src/home.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6599132Z "line": 19 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6599237Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6599338Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6599480Z "path": "crates/spt-store/src/home.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6599682Z "line": 70 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6599785Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6599890Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6600016Z "path": "crates/spt-store/src/home.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6600119Z "line": 96 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6600218Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6600323Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6600455Z "path": "crates/spt-store/src/home.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6600564Z "line": 121 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6600665Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6600770Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6600897Z "path": "crates/spt-store/src/home.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6600999Z "line": 172 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6601099Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6601203Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6601342Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6601455Z "line": 178 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6601561Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6601657Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6601789Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6601905Z "line": 1469 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6601995Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6602118Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6602220Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6602324Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6602443Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6602549Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6602657Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6602761Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6602876Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6602984Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6603088Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6603241Z "path": "crates/spt-store/src/contextstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6603350Z "line": 577 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6603445Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6603546Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6603703Z "path": "crates/spt-store/src/contextstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6603808Z "line": 638 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6603899Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6604003Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6604143Z "path": "crates/spt-store/src/home.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6604247Z "line": 213 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6604346Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6604447Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6604585Z "path": "crates/spt-store/src/home.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6604695Z "line": 249 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6604796Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6604890Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6605038Z "path": "crates/spt-store/src/home.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6605149Z "line": 262 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6605248Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6605358Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6605487Z "path": "crates/spt-store/src/home.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6605600Z "line": 338 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6605700Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6605811Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6605948Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6606058Z "line": 690 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6606154Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6606253Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6606383Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6606492Z "line": 8007 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6606592Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6606697Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6606826Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6606930Z "line": 9837 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6607032Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6607131Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6607347Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6607446Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6607545Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6607641Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6607756Z "id": "REQ-INST-2", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6607907Z "title": "Per-node files, synced Psyche mind", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6608026Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6608209Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6608310Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6608411Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6608509Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6608620Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6608729Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6608843Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6609035Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6609139Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6609250Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6609359Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6609473Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6609612Z "path": "crates/spt-daemon/src/lifecycle.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6609716Z "line": 108 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6609821Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6609927Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6610054Z "path": "crates/spt-live/src/ingest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6610165Z "line": 28 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6610266Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6610374Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6610514Z "path": "crates/spt-live/src/ingest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6610619Z "line": 74 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6610721Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6610821Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6610954Z "path": "crates/spt-live/src/ingest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6611057Z "line": 96 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6611158Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6611263Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6611391Z "path": "crates/spt-live/src/resume.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6611492Z "line": 86 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6611592Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6611687Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6611826Z "path": "crates/spt-live/src/signoff.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6611935Z "line": 118 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6612039Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6612131Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6612231Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6612331Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6612441Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6612546Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6612646Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6612741Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6612847Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6612955Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6613056Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6613194Z "path": "crates/spt-live/src/ingest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6613303Z "line": 250 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6613407Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6613512Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6613653Z "path": "crates/spt-live/src/resume.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6613763Z "line": 280 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6613868Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6613967Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6614073Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6614168Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6614258Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6614359Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6614473Z "id": "REQ-INST-3", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6614654Z "title": "Dormant (warm) / suspended (cold) resting states", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6614774Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6614869Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6614973Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6615075Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6615170Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6615279Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6615385Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6615493Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6615589Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6615695Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6615832Z "path": "docs/DORMANCY-BUDGET.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6615928Z "line": 3 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6616034Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6616240Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6616337Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6616446Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6616555Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6616671Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6616771Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6616914Z "path": "crates/spt-daemon/src/attach.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6617114Z "line": 59 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6617214Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6617324Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6617466Z "path": "crates/spt-daemon/src/dispatch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6617567Z "line": 480 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6617672Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6617776Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6617921Z "path": "crates/spt-daemon/src/lifecycle.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6618020Z "line": 254 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6618129Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6618231Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6618382Z "path": "crates/spt-daemon/src/lifecycle.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6618490Z "line": 384 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6618595Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6618698Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6618831Z "path": "crates/spt-daemon/src/lifecycle.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6618938Z "line": 418 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6619122Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6619223Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6619370Z "path": "crates/spt-daemon/src/pump/sync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6619475Z "line": 74 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6619576Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6619671Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6619815Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6619919Z "line": 234 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6620019Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6620119Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6620267Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6620376Z "line": 396 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6620483Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6620587Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6620730Z "path": "crates/spt-daemon/src/resting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6620840Z "line": 45 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6620943Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6621040Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6621188Z "path": "crates/spt-daemon/src/resting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6621286Z "line": 114 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6621396Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6621496Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6621631Z "path": "crates/spt-daemon/src/resting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6621742Z "line": 152 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6621842Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6621942Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6622081Z "path": "crates/spt-daemon/src/resting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6622186Z "line": 168 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6622289Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6622382Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6622525Z "path": "crates/spt-daemon/src/resting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6622633Z "line": 178 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6622734Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6622838Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6622977Z "path": "crates/spt-daemon/src/resting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6623087Z "line": 210 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6623186Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6623287Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6623412Z "path": "crates/spt-daemon/src/resting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6623520Z "line": 287 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6623626Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6623726Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6623863Z "path": "crates/spt-daemon/src/resting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6623968Z "line": 311 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6624072Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6624170Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6624313Z "path": "crates/spt-daemon/src/resting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6624410Z "line": 389 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6624619Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6624719Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6624866Z "path": "crates/spt-daemon/src/resting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6624977Z "line": 438 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6625082Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6625181Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6625425Z "path": "crates/spt-daemon/tests/budget.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6625543Z "line": 37 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6625640Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6625744Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6625892Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6626001Z "line": 62 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6626110Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6626207Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6626349Z "path": "crates/spt-store/src/info.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6626464Z "line": 279 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6626565Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6626673Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6626805Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6626916Z "line": 1848 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6627006Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6627111Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6627217Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6627321Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6627439Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6627551Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6627660Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6627759Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6627870Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6627974Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6628079Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6628232Z "path": "crates/spt-daemon/src/config.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6628332Z "line": 360 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6628438Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6628537Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6628685Z "path": "crates/spt-daemon/src/lifecycle.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6628791Z "line": 837 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6628899Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6629093Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6629235Z "path": "crates/spt-daemon/src/lifecycle.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6629343Z "line": 894 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6629445Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6629545Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6629702Z "path": "crates/spt-daemon/src/pump/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6629812Z "line": 889 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6629912Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6630016Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6630165Z "path": "crates/spt-daemon/src/pump/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6630264Z "line": 1014 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6630365Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6630475Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6630626Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6630737Z "line": 1264 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6630832Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6630927Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6631076Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6631189Z "line": 1405 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6631280Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6631386Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6631523Z "path": "crates/spt-daemon/src/resting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6631634Z "line": 449 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6631743Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6631842Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6631990Z "path": "crates/spt-daemon/src/resting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6632098Z "line": 485 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6632201Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6632302Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6632431Z "path": "crates/spt-daemon/src/resting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6632549Z "line": 540 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6632641Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6632731Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6632878Z "path": "crates/spt-daemon/src/resting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6632989Z "line": 697 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6633198Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6633299Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6633442Z "path": "crates/spt-daemon/src/resting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6633546Z "line": 931 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6633642Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6633741Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6633981Z "path": "crates/spt-daemon/src/resting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6634090Z "line": 945 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6634191Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6634296Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6634442Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6634537Z "line": 1290 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6634651Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6634749Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6634897Z "path": "crates/spt-store/src/info.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6634994Z "line": 609 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6635102Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6635203Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6635337Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6635445Z "line": 8031 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6635542Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6635651Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6635750Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6635852Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6635955Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6636060Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6636171Z "id": "REQ-INST-4", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6636375Z "title": "active to dormant/suspended fires a transition echo commune", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6636496Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6636599Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6636704Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6636811Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6636909Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6637009Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6637116Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6637224Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6637323Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6637428Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6637553Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6637657Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6637757Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6637905Z "path": "crates/spt-daemon/src/lifecycle.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6638009Z "line": 385 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6638111Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6638211Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6638353Z "path": "crates/spt-daemon/src/resting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6638458Z "line": 202 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6638567Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6638668Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6638815Z "path": "crates/spt-daemon/src/resting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6638920Z "line": 234 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6639102Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6639206Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6639346Z "path": "crates/spt-daemon/src/resting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6639454Z "line": 274 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6639554Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6639658Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6639762Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6639866Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6639990Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6640091Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6640195Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6640300Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6640415Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6640519Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6640620Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6640767Z "path": "crates/spt-daemon/src/lifecycle.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6640876Z "line": 889 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6640973Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6641063Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6641206Z "path": "crates/spt-daemon/src/resting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6641307Z "line": 561 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6641416Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6641520Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6641659Z "path": "crates/spt-daemon/src/resting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6641764Z "line": 668 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6641965Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6642069Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6642213Z "path": "crates/spt-daemon/src/resting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6642322Z "line": 750 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6642426Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6642616Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6642705Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6642804Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6642910Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6643010Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6643114Z "id": "REQ-INST-5", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6643334Z "title": "Two-tier context sync (live to all, project to same-project)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6643443Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6643554Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6643654Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6643753Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6643850Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6643968Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6644078Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6644188Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6644297Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6644402Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6644508Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6644621Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6644727Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6644832Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6644987Z "path": "crates/spt-daemon/src/pump/sync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6645097Z "line": 85 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6645201Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6645304Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6645443Z "path": "crates/spt-daemon/src/sync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6645544Z "line": 68 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6645647Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6645749Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6645892Z "path": "crates/spt-daemon/src/sync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6645996Z "line": 99 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6646102Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6646206Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6646344Z "path": "crates/spt-daemon/src/sync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6646464Z "line": 183 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6646555Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6646654Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6646783Z "path": "crates/spt-daemon/src/sync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6646893Z "line": 314 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6646998Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6647094Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6647193Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6647298Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6647409Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6647512Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6647613Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6647770Z "path": "crates/spt-daemon/tests/dispatch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6647879Z "line": 156 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6647974Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6648080Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6648226Z "path": "crates/spt-daemon/tests/pump.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6648322Z "line": 145 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6648433Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6648536Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6648685Z "path": "crates/spt-daemon/tests/twohost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6648790Z "line": 707 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6648894Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6649075Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6649223Z "path": "crates/spt-daemon/tests/twohost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6649329Z "line": 1069 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6649433Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6649533Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6649644Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6649747Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6649867Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6649964Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6650071Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6650214Z "path": "crates/spt-daemon/src/sync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6650313Z "line": 552 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6650412Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6650507Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6650642Z "path": "crates/spt-daemon/src/sync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6650846Z "line": 595 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6650942Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6651050Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6651190Z "path": "crates/spt-daemon/tests/sync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6651290Z "line": 219 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6651481Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6651580Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6651685Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6651790Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6651895Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6651995Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6652110Z "id": "REQ-INST-6", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6652324Z "title": "Deferred messages not delivered to dormant/suspended instances", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6652444Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6652544Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6652653Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6652759Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6652854Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6652962Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6653067Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6653185Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6653294Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6653394Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6653523Z "path": "docs/DEFERRED.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6653632Z "line": 13 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6653727Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6653819Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6653927Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6654033Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6654138Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6654251Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6654357Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6654500Z "path": "crates/spt-daemon/src/dispatch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6654609Z "line": 391 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6654716Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6654819Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6654967Z "path": "crates/spt-daemon/src/resthost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6655073Z "line": 27 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6655181Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6655287Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6655430Z "path": "crates/spt-daemon/src/resthost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6655543Z "line": 73 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6655633Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6655738Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6655888Z "path": "crates/spt-daemon/src/resthost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6655994Z "line": 182 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6656100Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6656203Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6656347Z "path": "crates/spt-daemon/src/resting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6656443Z "line": 426 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6656551Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6656657Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6656800Z "path": "crates/spt-net/src/net/rest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6656909Z "line": 31 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6657010Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6657110Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6657253Z "path": "crates/spt/src/api/delivery.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6657367Z "line": 202 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6657472Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6657568Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6657701Z "path": "crates/spt/src/api/worker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6657801Z "line": 83 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6657912Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6658011Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6658144Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6658260Z "line": 1849 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6658358Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6658462Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6658597Z "path": "crates/spt/src/wansend.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6658701Z "line": 179 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6658806Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6658897Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6659120Z "path": "crates/spt/src/wansend.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6659222Z "line": 215 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6659327Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6659531Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6659640Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6659740Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6659856Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6659974Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6660069Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6660218Z "path": "crates/spt-daemon/tests/twohost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6660418Z "line": 721 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6660514Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6660617Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6660765Z "path": "crates/spt-daemon/tests/twohost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6660869Z "line": 1114 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6660972Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6661077Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6661207Z "path": "crates/spt/src/wansend.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6661315Z "line": 726 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6661416Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6661502Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6661606Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6661706Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6661812Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6661916Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6662021Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6662169Z "path": "crates/spt-daemon/src/dispatch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6662273Z "line": 661 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6662384Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6662483Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6662627Z "path": "crates/spt-daemon/src/resting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6662728Z "line": 899 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6662827Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6662927Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6663067Z "path": "crates/spt-net/src/net/rest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6663179Z "line": 66 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6663276Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6663382Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6663513Z "path": "crates/spt/src/api/delivery.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6663617Z "line": 297 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6663732Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6663834Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6663973Z "path": "crates/spt/src/api/worker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6664078Z "line": 203 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6664182Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6664283Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6664393Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6664492Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6664593Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6664693Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6667504Z "id": "REQ-INST-7", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6667712Z "title": "Subnet registry + bare-id resolution policy", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6667833Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6667932Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6668042Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6668143Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6668242Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6668351Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6668458Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6668571Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6668681Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6668792Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6668895Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6669099Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6669200Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6669304Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6669452Z "path": "crates/spt-daemon/src/dispatch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6669558Z "line": 436 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6669656Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6669753Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6669919Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6670019Z "line": 27 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6670134Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6670234Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6670397Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6670506Z "line": 207 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6670610Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6670707Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6670858Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6671107Z "line": 344 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6671210Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6671315Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6671462Z "path": "crates/spt-net/src/net/ndjson.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6671570Z "line": 59 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6671671Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6671880Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6672029Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6672138Z "line": 41 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6672242Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6672344Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6672490Z "path": "crates/spt-net/src/net/replicate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6672591Z "line": 27 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6672696Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6672791Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6672930Z "path": "crates/spt-net/src/net/replicate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6673039Z "line": 119 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6673144Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6673245Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6673396Z "path": "crates/spt-net/src/net/replicate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6673501Z "line": 134 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6673598Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6673697Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6673850Z "path": "crates/spt-store/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6673966Z "line": 139 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6674068Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6674172Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6674273Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6674380Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6674489Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6674596Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6674704Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6674853Z "path": "crates/spt-daemon/tests/pump.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6674972Z "line": 145 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6675071Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6675177Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6675325Z "path": "crates/spt-daemon/tests/twohost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6675439Z "line": 665 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6675540Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6675639Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6675792Z "path": "crates/spt-daemon/tests/twohost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6675892Z "line": 964 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6675997Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6676102Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6676203Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6676311Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6676422Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6676536Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6676640Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6676797Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6676905Z "line": 1134 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6677004Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6677109Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6677262Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6677376Z "line": 1521 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6677477Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6677581Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6677739Z "path": "crates/spt-daemon/tests/replicate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6677844Z "line": 84 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6677953Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6678049Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6678201Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6678306Z "line": 812 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6678408Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6678516Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6678664Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6678774Z "line": 823 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6678873Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6679047Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6679432Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6679626Z "line": 838 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6679722Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6679817Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6680250Z "path": "crates/spt-net/src/net/replicate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6680351Z "line": 166 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6680461Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6680565Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6680723Z "path": "crates/spt-net/src/net/replicate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6680943Z "line": 181 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6681042Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6681142Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6681291Z "path": "crates/spt-net/src/net/replicate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6681409Z "line": 214 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6681495Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6681606Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6681704Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6681809Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6681904Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6682003Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6682121Z "id": "REQ-INST-8", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6682312Z "title": "Remote-control mode distinct from local operation", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6682426Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6682531Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6682627Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6682736Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6682836Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6682947Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6683046Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6683166Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6683285Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6683394Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6683495Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6683604Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6683709Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6683810Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6683966Z "path": "crates/spt-daemon/src/attach.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6684071Z "line": 104 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6684173Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6684281Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6684415Z "path": "crates/spt-daemon/src/attach.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6684530Z "line": 351 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6684628Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6684728Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6684857Z "path": "crates/spt-daemon/src/attach.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6684964Z "line": 391 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6685069Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6685165Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6685297Z "path": "crates/spt-net/src/net/attach.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6685403Z "line": 62 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6685513Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6685617Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6685713Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6685814Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6685923Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6686037Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6686143Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6686299Z "path": "crates/spt-daemon/tests/dispatch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6686410Z "line": 415 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6686514Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6686619Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6686763Z "path": "crates/spt-daemon/tests/twohost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6686876Z "line": 1028 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6686982Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6687083Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6687190Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6687294Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6687409Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6687521Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6687621Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6687761Z "path": "crates/spt-daemon/tests/attach.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6687874Z "line": 366 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6687979Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6688084Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6688232Z "path": "crates/spt-daemon/tests/attach.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6688333Z "line": 633 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6688438Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6688542Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6688685Z "path": "crates/spt-net/src/net/attach.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6688795Z "line": 116 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6689061Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6689166Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6689301Z "path": "crates/spt-net/src/net/attach.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6689409Z "line": 160 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6689539Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6689635Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6689839Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6689926Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6690034Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6690133Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6690253Z "id": "REQ-INST-9", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6690471Z "title": "Multi-subnet membership (same-user N subnets; cross-user seam)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6690578Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6690687Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6690786Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6690892Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6690987Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6691082Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6691198Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6691311Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6691421Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6691527Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6691640Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6691745Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6691851Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6692002Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6692113Z "line": 449 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6692222Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6692321Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6692426Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6692516Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6692629Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6692748Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6692844Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6692948Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6693053Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6693159Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6693258Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6693411Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6693516Z "line": 1397 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6693620Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6693731Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6693868Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6693977Z "line": 1406 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6694079Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6694188Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6694326Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6694437Z "line": 1422 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6694545Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6694646Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6694789Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6694899Z "line": 1434 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6695004Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6695109Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6695250Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6695360Z "line": 1454 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6695459Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6695562Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6695653Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6695754Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6695858Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6695943Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6696064Z "id": "REQ-INSTALL-1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6696278Z "title": "Two install paths; signed one-line script; OS-service registration", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6696397Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6696502Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6696607Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6696712Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6696812Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6696917Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6697018Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6697131Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6697237Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6697342Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6697460Z "path": "CONTEXT.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6697567Z "line": 754 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6697671Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6697774Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6697974Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6698077Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6698201Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6698306Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6698406Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6698535Z "path": "installer/install.ps1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6698640Z "line": 57 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6698811Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6698912Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6699125Z "path": "installer/install.sh", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6699227Z "line": 52 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6699326Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6699431Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6699532Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6699641Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6699746Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6699857Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6699960Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6700104Z "path": "crates/spt/tests/oneliner_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6700214Z "line": 21 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6700313Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6700419Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6700510Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6700612Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6700726Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6700837Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6700937Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6701036Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6701143Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6701238Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6701351Z "id": "REQ-INSTALL-10", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6702810Z "title": "Windows at-logon autostart runs the daemon in the background with no persistent window: the scheduled task launches `spt daemon start` (which spawn_detaches a console-less DETACHED_PROCESS daemon and exits) rather than the foreground `spt daemon run` — Task Scheduler's interactive ONLOGON launch of a long-lived console process otherwise leaves a visible console window for the daemon's whole lifetime (v0.7.4)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6702924Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6703034Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6703137Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6703232Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6703332Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6703433Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6703551Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6703651Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6703757Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6703861Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6703966Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6704067Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6704166Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6704301Z "path": "installer/install.ps1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6704410Z "line": 191 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6704509Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6704605Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6704696Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6704800Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6704906Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6705016Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6705115Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6705226Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6705340Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6705444Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6705545Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6705697Z "path": "crates/spt/tests/oneliner_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6705810Z "line": 211 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6705920Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6706037Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6706136Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6706242Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6706348Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6706437Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6706562Z "id": "REQ-INSTALL-11", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6708396Z "title": "Adapter command templates resolve their program against the adapter's install dir BEFORE PATH: a `.spt`-shipped binary (dropped to adapters/_github// by --release/--github acquisition, or kept in the source_dir under copy-mode where only manifest+strings/ are copied to adapters/) runs without any PATH placement — a bare-name template token (e.g. `claude-spt-digest ...`) is rewritten to /(.exe on Windows) when that file exists, else left bare for the PATH fallback. Makes a `.spt` self-contained (closes the --release bundled-binary gap perri confirmed) (v0.7.4)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6708637Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6708741Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6709051Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6709163Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6709262Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6709362Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6709468Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6709577Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6709681Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6709782Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6709911Z "path": "CONTEXT.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6710015Z "line": 138 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6710116Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6710221Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6710349Z "path": "docs/MANIFEST.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6710455Z "line": 82 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6710554Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6710654Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6710741Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6710844Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6710960Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6711056Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6711159Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6711301Z "path": "crates/spt-daemon/src/digest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6711412Z "line": 223 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6711511Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6711620Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6711774Z "path": "crates/spt-daemon/src/lifecycle.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6711883Z "line": 99 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6711979Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6712069Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6712221Z "path": "crates/spt-daemon/src/lifecycle.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6712328Z "line": 117 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6712431Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6712536Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6712685Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6712789Z "line": 332 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6712889Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6712991Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6713127Z "path": "crates/spt-live/src/digest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6713233Z "line": 88 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6713329Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6713428Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6713570Z "path": "crates/spt-live/src/digest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6713674Z "line": 104 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6713778Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6713878Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6714026Z "path": "crates/spt-runtime/src/runtime.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6714130Z "line": 297 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6714226Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6714336Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6714478Z "path": "crates/spt-runtime/src/runtime.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6714584Z "line": 332 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6714679Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6714779Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6714927Z "path": "crates/spt-runtime/src/runtime.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6715031Z "line": 523 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6715136Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6715237Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6715384Z "path": "crates/spt-runtime/src/runtime.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6715490Z "line": 546 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6715599Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6715709Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6715839Z "path": "crates/spt-runtime/src/runtime.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6715951Z "line": 561 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6716057Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6716168Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6716309Z "path": "crates/spt/src/api/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6716427Z "line": 492 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6716532Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6716631Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6716841Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6716950Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6717074Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6717189Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6717279Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6717389Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6717489Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6717699Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6717804Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6717951Z "path": "crates/spt-runtime/src/runtime.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6718057Z "line": 799 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6718152Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6718256Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6718396Z "path": "crates/spt-runtime/src/runtime.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6718514Z "line": 811 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6718609Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6718716Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6718847Z "path": "crates/spt-runtime/src/runtime.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6719042Z "line": 820 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6719155Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6719263Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6719364Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6719461Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6719559Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6719660Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6719769Z "id": "REQ-INSTALL-12", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6722476Z "title": "Durable active-profile pointer for bind-time profile selection (ADR-0021): adapters/active-profiles.toml at the registry ROOT (sibling to the per-adapter / dirs, so adapter add/update/remove — which only rewrite a / subdir — can never clobber it), a flat host_binary → \"adapter[:profile]\" map. Read at bind as the PRIMARY profile selector; unset → the registered_at_ms fallback (REQ-START-5). Written ONLY by `spt adapter use [:profile]` (resolves the adapter's host_binaries → sets each binary→adapter[:profile]); `spt adapter use --clear ` drops. NEVER auto-written by install/update/adapter add (that is precisely what would let an update silently flip the active profile). A stale pointer (uninstalled adapter / deleted profile) self-heals: ignored, fall back, warn once. Pruned on adapter remove. Atomic write (spt_store atomic). (v0.9.0)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6722611Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6722710Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6722825Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6722926Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6723030Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6723130Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6723227Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6723325Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6723440Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6723546Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6723649Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6723769Z "path": "CONTEXT.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6723871Z "line": 185 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6723973Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6724087Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6724188Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6724290Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6724404Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6724510Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6724610Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6724762Z "path": "crates/spt-runtime/src/resolve.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6724872Z "line": 27 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6724981Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6725087Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6725225Z "path": "crates/spt-runtime/src/resolve.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6725334Z "line": 223 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6725440Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6725540Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6725668Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6725774Z "line": 5677 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6725888Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6725992Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6726103Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6726202Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6726312Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6726418Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6726612Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6726766Z "path": "crates/spt/tests/live_resolve_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6726869Z "line": 19 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6726973Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6727078Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6727181Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6727382Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6727491Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6727605Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6727706Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6727858Z "path": "crates/spt-runtime/src/resolve.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6727958Z "line": 395 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6728049Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6728158Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6728302Z "path": "crates/spt-runtime/src/resolve.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6728416Z "line": 421 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6728516Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6728617Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6728769Z "path": "crates/spt-runtime/src/resolve.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6728878Z "line": 440 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6729064Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6729165Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6729313Z "path": "crates/spt-runtime/src/resolve.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6729417Z "line": 475 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6729530Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6729635Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6729758Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6729871Z "line": 8665 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6729968Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6730072Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6730172Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6730273Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6730378Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6730472Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6730592Z "id": "REQ-INSTALL-2", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6730754Z "title": "Marketplace-repackaging-friendly install", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6730860Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6730964Z "doc" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6731078Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6731184Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6731284Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6731397Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6731504Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6731607Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6731712Z "path": "CONTEXT.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6731837Z "line": 755 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6731936Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6732041Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6732148Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6732251Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6732374Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6732474Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6732576Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6732683Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6732789Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6732899Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6733003Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6733104Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6733213Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6733337Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6733443Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6733547Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6733646Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6733748Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6733866Z "id": "REQ-INSTALL-3", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6734034Z "title": "Idempotent + interactive-optional first run", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6734153Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6734257Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6734363Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6734468Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6734566Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6734676Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6734790Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6734893Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6734998Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6735099Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6735217Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6735317Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6735423Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6735551Z "path": "installer/install.ps1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6735771Z "line": 100 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6735870Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6735981Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6736100Z "path": "installer/install.ps1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6736204Z "line": 111 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6736467Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6736571Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6736705Z "path": "installer/install.sh", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6736819Z "line": 79 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6736921Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6737025Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6737129Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6737240Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6737345Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6737462Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6737558Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6737708Z "path": "crates/spt/tests/oneliner_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6737817Z "line": 167 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6737918Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6738080Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6738184Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6738285Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6738389Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6738504Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6738595Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6738690Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6738804Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6738901Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6739114Z "id": "REQ-INSTALL-4", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6739802Z "title": "Adapter registration lifecycle: spt adapter add (--github, manifest-first, install-is-first-update) + soft-deregister remove + optional manifest uninstall template; node-local registered-adapter set self-update ripples over", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6739911Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6740019Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6740119Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6740224Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6740360Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6740465Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6740571Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6740679Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6740790Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6740895Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6741018Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6741119Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6741210Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6741386Z "path": "crates/spt-daemon/src/adapter_update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6741495Z "line": 165 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6741596Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6741695Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6741848Z "path": "crates/spt-runtime/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6741953Z "line": 29 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6742059Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6742182Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6742330Z "path": "crates/spt-runtime/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6742436Z "line": 288 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6742534Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6742640Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6742788Z "path": "crates/spt-runtime/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6742891Z "line": 356 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6742996Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6743102Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6743253Z "path": "crates/spt-runtime/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6743359Z "line": 386 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6743464Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6743572Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6743727Z "path": "crates/spt-runtime/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6743831Z "line": 434 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6743931Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6744036Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6744160Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6744264Z "line": 5396 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6744361Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6744470Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6744575Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6744676Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6744793Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6745005Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6745112Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6745216Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6745327Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6745439Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6745543Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6745801Z "path": "crates/spt-daemon/src/adapter_update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6745911Z "line": 375 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6746021Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6746125Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6746274Z "path": "crates/spt-runtime/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6746388Z "line": 808 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6746483Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6746594Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6746736Z "path": "crates/spt-runtime/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6746846Z "line": 849 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6746956Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6747050Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6747195Z "path": "crates/spt-runtime/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6747303Z "line": 869 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6747408Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6747509Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6747636Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6747747Z "line": 8403 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6747848Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6747951Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6748051Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6748156Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6748259Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6748363Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6748487Z "id": "REQ-INSTALL-5", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6749098Z "title": "Non-interactive install path: the canonical one-liner doubles as every adapter's pack-in on-demand install (no second mechanism); sha256-verified fetch; user-PATH registration", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6749222Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6749326Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6749427Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6749531Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6752939Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6753075Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6753190Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6753306Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6753404Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6753513Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6753633Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6753733Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6753837Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6753982Z "path": "installer/install.ps1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6754095Z "line": 5 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6754200Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6754305Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6754434Z "path": "installer/install.sh", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6754549Z "line": 6 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6754654Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6754753Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6754854Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6754954Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6755063Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6755159Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6755259Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6755415Z "path": "crates/spt/tests/oneliner_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6755522Z "line": 22 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6755625Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6755734Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6755830Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6755934Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6756051Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6756166Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6756267Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6756361Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6756462Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6756562Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6756666Z "id": "REQ-INSTALL-6", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6757963Z "title": "Linux elevation install leg: install.sh symlinks the binary into a sudo-reachable path (/usr/local/bin; graceful print-the-one-liner when unelevated) so sudo spt resolves; first sudo spt detects elevation and prompts ONCE for the default user account — thereafter any elevated daemon launch runs daemon + state under that account, never root (KH 5.7 interplay verified) (M8 decision 8)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6758240Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6758331Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6758437Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6758535Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6758735Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6758843Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6759038Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6759153Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6759247Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6759343Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6759453Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6759552Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6759658Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6759806Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6759915Z "line": 61 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6760016Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6760120Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6760273Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6760392Z "line": 641 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6760487Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6760588Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6760735Z "path": "crates/spt-daemon/src/deelevate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6760840Z "line": 191 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6760941Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6761045Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6761191Z "path": "crates/spt-daemon/src/deelevate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6761297Z "line": 276 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6761400Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6761504Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6761634Z "path": "crates/spt/src/main.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6761738Z "line": 43 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6761833Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6761939Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6762076Z "path": "installer/install.sh", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6762186Z "line": 104 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6762301Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6762405Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6762511Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6762616Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6762734Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6762854Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6762954Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6763059Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6763169Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6763283Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6763378Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6763518Z "path": "crates/spt-daemon/src/deelevate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6763635Z "line": 894 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6763736Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6763842Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6763936Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6764044Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6764140Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6764246Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6764355Z "id": "REQ-INSTALL-7", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6765519Z "title": "Windows inbound reachability: the elevated install leg registers the inbound-UDP firewall rule (New-NetFirewallRule); the daemon self-detects blocked inbound and renders it as the no-connection state in subnet status + the coming-online banner (covers user-scope installs that skip the elevated leg — never a silent NO_SEED_HOLDER dead-end) (M8 root cause 3)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6765647Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6765734Z "impl" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6765843Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6765952Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6766053Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6766153Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6766266Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6766375Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6766480Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6766597Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6766707Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6766793Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6766926Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6767037Z "line": 3920 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6767245Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6767347Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6767480Z "path": "installer/install.ps1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6767579Z "line": 157 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6767680Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6767785Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6767976Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6768085Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6768195Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6768306Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6768409Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6768509Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6768611Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6768720Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6768824Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6768911Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6769091Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6769195Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6769304Z "id": "REQ-INSTALL-8", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6770427Z "title": "OS-service registration (REQ-INSTALL-1's deferred third leg): Linux systemd USER service + loginctl enable-linger (linger rides the elevated install leg; daemon starts at boot pre-login, user universe per KH 5.7, systemctl --user managed); Windows scheduled task at-logon (interactive session, no stored credentials); a node is reachable after reboot without any manual spt invocation (M8 decision 17)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6770547Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6770647Z "impl" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6770751Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6770858Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6770967Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6771076Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6771187Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6771286Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6771395Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6771497Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6771606Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6771709Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6771847Z "path": "installer/install.ps1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6771965Z "line": 184 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6772060Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6772160Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6772289Z "path": "installer/install.sh", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6772403Z "line": 121 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6772509Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6772613Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6772717Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6772819Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6772933Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6773037Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6773138Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6773237Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6773347Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6773463Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6773562Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6773657Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6773763Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6773857Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6773972Z "id": "REQ-INSTALL-9", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6775229Z "title": "Adapter add from a GitHub release archive: `spt adapter add --release [--tag ] [--asset ]` fetches a `.spt` tar asset over HTTPS+GitHub trust, extracts it to the durable adapters/_github home, and registers the root — ships built binaries source-free and versioned (the distribution path for an adapter whose dev repo is a monorepo subdir, where --github root-only clone does not fit)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6775355Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6775454Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6775558Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6775659Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6775759Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6775868Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6775964Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6776083Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6776193Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6776299Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6776417Z "path": "CONTEXT.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6776522Z "line": 771 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6776628Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6776830Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6776931Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6777035Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6777143Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6777253Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6777354Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6777486Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6777673Z "line": 2535 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6777772Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6777877Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6778002Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6778116Z "line": 2559 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6778212Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6778302Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6778397Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6778507Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6778622Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6778726Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6778827Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6778932Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6779132Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6779242Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6779346Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6779476Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6779581Z "line": 7591 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6779684Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6779783Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6779921Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6780024Z "line": 8433 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6780125Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6780230Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6780330Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6780429Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6780526Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6780626Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6780740Z "id": "REQ-KICK-1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6783278Z "title": "Explicit, loud controller displacement: `spt rc kick ` / `--take` (Take intent) kicks the incumbent controller and becomes controller; the displaced controller receives a LOUD `Displaced{by}` notice and is FULLY DETACHED (not demoted to a viewer). A default attach to a controlled endpoint is NEVER a silent displace (it is the Control busy-refusal). An old (N-1) rc omits intent → Control, so it can drive a free endpoint but CANNOT `--take` — it can never silently steal, and gets a clean busy-refusal instead. Taking control rides the same access_check(endpoint, origin, Unsolicited) as a normal control attach (if you may drive, you may take — no elevated kick policy). The picker surfaces 'Kick and attach' (Take) only on a controlled (blue ■) endpoint, via the existing attach dispatch (single-bringup-path: intent is a parameter).", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6783412Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6783521Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6783626Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6783727Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6783827Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6783926Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6784028Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6784137Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6784251Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6784357Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6784470Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6784580Z "path": "CONTEXT.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6784695Z "line": 342 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6784799Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6784895Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6784996Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6785094Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6785202Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6785309Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6785413Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6785561Z "path": "crates/spt-net/src/net/attach.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6785676Z "line": 41 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6785780Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6785886Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6786014Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6786118Z "line": 701 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6786224Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6786324Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6786563Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6786672Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6786767Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6786878Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6786977Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6787125Z "path": "crates/spt-daemon/tests/attach.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6787329Z "line": 913 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6787434Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6787539Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6787637Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6787745Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6787856Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6787961Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6788060Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6788205Z "path": "crates/spt-net/src/net/attach.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6788318Z "line": 205 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6788428Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6788529Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6788628Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6788728Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6788824Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6788934Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6789163Z "id": "REQ-MANIFEST-1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6789392Z "title": "Per-adapter manifest with adapter_name and min_spt_core_version", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6789501Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6789601Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6789707Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6789807Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6789911Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6790017Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6790112Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6790221Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6790324Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6790425Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6790547Z "path": "docs/MANIFEST.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6790661Z "line": 19 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6790762Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6790852Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6790956Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6791057Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6791172Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6791290Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6791391Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6791543Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6791648Z "line": 18 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6791753Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6791858Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6791968Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6792073Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6792182Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6792288Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6792379Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6792482Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6792598Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6792712Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6792810Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6792958Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6793062Z "line": 1029 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6793165Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6793271Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6793419Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6793533Z "line": 1325 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6793634Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6793739Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6793871Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6793987Z "line": 1337 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6794095Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6794196Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6794339Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6794448Z "line": 1348 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6794554Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6794663Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6794801Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6794917Z "line": 1365 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6795015Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6795121Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6795265Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6795378Z "line": 1379 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6795584Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6795692Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6795845Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6795941Z "line": 1495 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6796049Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6796240Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6796393Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6796504Z "line": 1510 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6796599Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6796702Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6796837Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6796946Z "line": 1621 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6797051Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6797157Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6797298Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6797414Z "line": 1632 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6797514Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6797604Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6797714Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6797815Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6797923Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6798022Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6798137Z "id": "REQ-MANIFEST-2", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6798664Z "title": "Adapter profiles — sparse leaf-replace overlays (shipped + local), composite : addressing, shadow-refusal, tighten-only consent floors", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6798779Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6798888Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6799079Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6799183Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6799288Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6799394Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6799508Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6799608Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6799718Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6799818Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6799937Z "path": "CONTEXT.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6800047Z "line": 75 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6800147Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6800252Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6800353Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6800452Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6800567Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6800673Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6800781Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6800932Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6801041Z "line": 82 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6801145Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6801254Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6801393Z "path": "crates/spt-runtime/src/profile.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6801502Z "line": 15 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6801604Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6801703Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6801855Z "path": "crates/spt-runtime/src/profile.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6801956Z "line": 65 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6802065Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6802170Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6802318Z "path": "crates/spt-runtime/src/profile.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6802428Z "line": 83 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6802533Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6802638Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6802780Z "path": "crates/spt-runtime/src/profile.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6802887Z "line": 183 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6803004Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6803104Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6803248Z "path": "crates/spt-runtime/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6803357Z "line": 527 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6803461Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6803561Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6803711Z "path": "crates/spt-runtime/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6803821Z "line": 553 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6803927Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6804026Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6804170Z "path": "crates/spt-runtime/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6804270Z "line": 671 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6804466Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6804566Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6804703Z "path": "crates/spt-runtime/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6804809Z "line": 696 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6804913Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6805013Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6805266Z "path": "crates/spt-runtime/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6805371Z "line": 719 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6805477Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6805580Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6805710Z "path": "crates/spt-runtime/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6805825Z "line": 734 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6805929Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6806035Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6806163Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6806276Z "line": 5567 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6806386Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6806482Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6806624Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6806724Z "line": 5581 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6806830Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6806938Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6807064Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6807159Z "line": 5615 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6807272Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6807378Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6807477Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6807587Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6807698Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6807797Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6807906Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6808003Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6808107Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6808216Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6808313Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6808459Z "path": "crates/spt-daemon/src/shellwake.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6808568Z "line": 921 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6808673Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6808771Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6808924Z "path": "crates/spt-runtime/src/profile.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6809129Z "line": 211 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6809229Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6809329Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6809476Z "path": "crates/spt-runtime/src/profile.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6809592Z "line": 272 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6809696Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6809801Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6809945Z "path": "crates/spt-runtime/src/profile.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6810054Z "line": 313 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6810158Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6810265Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6810402Z "path": "crates/spt-runtime/src/profile.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6810502Z "line": 325 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6810612Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6810712Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6810856Z "path": "crates/spt-runtime/src/profile.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6810969Z "line": 336 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6811069Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6811166Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6811303Z "path": "crates/spt-runtime/src/profile.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6811407Z "line": 345 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6811512Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6811620Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6811766Z "path": "crates/spt-runtime/src/profile.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6811877Z "line": 361 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6811972Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6812071Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6812211Z "path": "crates/spt-runtime/src/profile.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6812315Z "line": 444 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6812425Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6812530Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6812668Z "path": "crates/spt-runtime/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6812773Z "line": 958 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6812973Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6813074Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6813216Z "path": "crates/spt-runtime/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6813321Z "line": 982 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6813428Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6813531Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6813790Z "path": "crates/spt-runtime/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6813898Z "line": 1008 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6814002Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6814107Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6814239Z "path": "crates/spt-runtime/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6814353Z "line": 1027 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6814459Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6814558Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6814701Z "path": "crates/spt-runtime/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6814811Z "line": 1058 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6814915Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6815016Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6815168Z "path": "crates/spt-store/src/shellinfo.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6815272Z "line": 309 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6815378Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6815478Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6815612Z "path": "crates/spt/src/api/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6815722Z "line": 606 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6815817Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6815912Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6816032Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6816131Z "line": 8610 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6816236Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6816342Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6816469Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6816580Z "line": 9558 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6816686Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6816784Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6816874Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6816974Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6817080Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6817184Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6817304Z "id": "REQ-MANIFEST-3", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6817971Z "title": "Adapter strings — [strings] KV tree, dot-path get-string resolving through the profile leaf-replace overlay, set-string editing a local profile's [strings] only; data-only (nothing executes a string)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6818100Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6818205Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6818301Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6818405Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6818500Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6818611Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6818709Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6818815Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6818916Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6819109Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6819229Z "path": "CONTEXT.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6819332Z "line": 81 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6819431Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6819536Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6819633Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6819755Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6819861Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6819961Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6820070Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6820219Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6820323Z "line": 92 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6820428Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6820538Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6820685Z "path": "crates/spt-runtime/src/profile.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6820796Z "line": 101 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6820904Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6821000Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6821144Z "path": "crates/spt-runtime/src/profile.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6821247Z "line": 132 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6821353Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6821455Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6821596Z "path": "crates/spt-runtime/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6821712Z "line": 577 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6821915Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6822019Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6822166Z "path": "crates/spt-runtime/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6822274Z "line": 633 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6822379Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6822466Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6822690Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6822799Z "line": 5628 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6822904Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6823009Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6823128Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6823237Z "line": 5654 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6823338Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6823447Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6823548Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6823653Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6823758Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6823872Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6823978Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6824073Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6824192Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6824297Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6824406Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6824547Z "path": "crates/spt-runtime/src/profile.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6824663Z "line": 371 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6824765Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6824869Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6825028Z "path": "crates/spt-runtime/src/profile.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6825132Z "line": 429 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6825233Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6825333Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6825480Z "path": "crates/spt-runtime/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6825586Z "line": 1082 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6825691Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6825795Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6825920Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6826029Z "line": 8703 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6826133Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6826235Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6826343Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6826448Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6826550Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6826653Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6826773Z "id": "REQ-MANIFEST-4", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6827491Z "title": "Keyword hints — [[hints]] {keywords (literal/regex), text}; spt api hint --session emits at most one matched hint per message, once per session (seen-set), declaration-order first match; profiles overlay [[hints]] by leaf-replace", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6827617Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6827724Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6827831Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6827935Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6828035Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6828141Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6828241Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6828350Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6828455Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6828555Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6828674Z "path": "CONTEXT.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6828775Z "line": 88 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6828875Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6829051Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6829157Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6829265Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6829371Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6829490Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6829584Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6829736Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6829841Z "line": 100 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6829944Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6830044Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6830188Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6830301Z "line": 183 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6830397Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6830502Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6830649Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6830751Z "line": 83 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6830954Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6831056Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6831203Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6831312Z "line": 629 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6831409Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6831518Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6831752Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6831861Z "line": 654 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6831962Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6832067Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6832161Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6832272Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6832391Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6832489Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6832599Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6832703Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6832811Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6832916Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6833012Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6833159Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6833274Z "line": 1445 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6833374Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6833478Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6833627Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6833737Z "line": 1478 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6833845Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6833947Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6834089Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6834199Z "line": 988 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6834299Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6834399Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6834489Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6834581Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6834684Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6834785Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6834906Z "id": "REQ-MANIFEST-5", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6837852Z "title": "File-backed adapter [strings] (M12-W3-T3.1): a [strings] dot-path value MAY be an inline-table FILE POINTER `key = { file = \"rel/path\" }` resolved to the file's contents at get-string time, keeping large bodies (skill-instructions, hint text) out of the manifest. A value-position table with a `file` key IS the pointer form (reserved — cannot double as data). Per-adapter aux storage `adapters//strings/`; pointers resolve relative to it with CONTAINMENT (reject `..`/absolute escaping the dir). UPDATE-SAFETY: a LOCAL profile's file-pointers resolve relative to the user-owned local-profile dir (NOT adapter-shipped strings/, which adapter updates overwrite), or the local profile inlines. Validate-at-register (fail-fast on a bad/escaping/missing pointer) + LAZY read at get-string (live file edits reflect, no re-register) + skip-diagnostics on missing-at-read (no hard-crash, mirrors [digest]). Rides the same leaf-replace profile overlay as the rest of [strings].", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6837970Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6838081Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6841020Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6841171Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6841268Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6841372Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6841481Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6841597Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6841710Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6841810Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6841940Z "path": "CONTEXT.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6842054Z "line": 83 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6842153Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6842260Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6842354Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6842454Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6842565Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6842673Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6842773Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6842928Z "path": "crates/spt-runtime/src/profile.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6843030Z "line": 120 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6843130Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6843240Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6843333Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6843577Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6843695Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6843805Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6843906Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6844010Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6844120Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6844315Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6844420Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6844568Z "path": "crates/spt-runtime/src/profile.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6844672Z "line": 404 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6844779Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6844883Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6845035Z "path": "crates/spt-runtime/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6845141Z "line": 1155 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6845244Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6845345Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6845499Z "path": "crates/spt-runtime/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6845611Z "line": 1184 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6845716Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6845821Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6845966Z "path": "crates/spt-runtime/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6846081Z "line": 1224 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6846187Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6846286Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6846439Z "path": "crates/spt-runtime/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6846548Z "line": 1239 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6846657Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6846754Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6846858Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6846958Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6847055Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6847158Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6847263Z "id": "REQ-MANIFEST-6", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6849610Z "title": "Cross-adapter fallback target addressing (M12-W3-T3.2): a cross-adapter fallback target is addressed as `:` (not just a bare adapter_name), resolved through the one composite-addressing resolver (registry::resolve_option) at every adapter-option read site so a fallback may select a shipped/local profile (e.g. a `ccs` profile). CONTEXT.md §cross-adapter-fallback reconciled (\"ccs is a profile; cross-adapter fallback may target :\"). Contract-only this milestone: the node-wide fallback SETTING + its rate-limit invocation are deferred to the consuming milestone (the runtime path does not exist yet); this REQ guarantees the ADDRESSING resolves.", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6849752Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6849851Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6849962Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6850071Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6850166Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6850272Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6850376Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6850491Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6850592Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6850719Z "path": "CONTEXT.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6850832Z "line": 141 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6850933Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6851031Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6851135Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6851241Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6851360Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6851469Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6851575Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6851670Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6851793Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6851890Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6851989Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6852094Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6852209Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6852313Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6852414Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6852566Z "path": "crates/spt-runtime/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6852676Z "line": 1261 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6852782Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6852881Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6852981Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6853082Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6853182Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6853401Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6853520Z "id": "REQ-MANIFEST-7", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6856598Z "title": "Adapter-declared shortcut basename (M12-W2 follow-on): an optional `[adapter] shortcut_basename` manifest field names the basename the `spt endpoint run` picker bakes into the generated `-` launcher shortcut (REQ-RUN-SHORTCUT). Absent ⇒ the harness-agnostic default `spt` (→ `spt-`); an adapter sets it to brand its shortcuts (claude-spt → `cc` → `cc-`), so the Claude-Code-ness lives in the PUBLISHED adapter manifest, never hardcoded in spt-core. The picker reads it from the RESOLVED manifest of the selected adapter (registry::resolve_option), falling back to `spt` when absent/empty/unresolvable. Additive + N-1-safe (serde-default Option, omitted from serialization when absent; old manifests parse clean); manifest.schema.json regenerated from the derive (ADR-0001, CI drift-gated). Documented in docs/MANIFEST.md `[adapter]` section + the claude-spt worked example — the adapter-author contract perri builds spt-claude-code against.", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6856971Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6857099Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6857208Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6857314Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6857409Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6857518Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6857624Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6857728Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6857838Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6857944Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6858063Z "path": "docs/MANIFEST.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6858167Z "line": 35 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6858263Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6858362Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6858458Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6858559Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6858667Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6858772Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6858869Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6859100Z "path": "crates/spt/src/picker/data.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6859215Z "line": 54 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6859315Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6859415Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6859515Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6859621Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6859734Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6859845Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6859950Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6860044Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6860160Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6860264Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6860368Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6860522Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6860631Z "line": 1638 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6860731Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6860832Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6860936Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6861032Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6861133Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6861231Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6861345Z "id": "REQ-MANIFEST-8", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6863613Z "title": "[adapter] host_binaries declares the harness executable basenames a kind=\"harness\" adapter hosts agents inside (e.g. host_binaries = [\"claude\"]); bind-time pid→exe-basename match (case-insensitive, .exe-stripped) over the seed's parent_pid selects the candidate adapter set; zero matches → a friendly error naming the binary + the --adapter escape hatch. Additive + N-1-safe: optional Vec, #[serde(default, skip_serializing_if = \"Vec::is_empty\")] (omitted-serialized like shortcut_basename, old manifests parse clean); manifest.schema.json regenerated from the derive (ADR-0001, CI drift-gated). The match-key for ADR-0021 adapter-agnostic bind-time resolution. (v0.9.0)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6863742Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6863846Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6863952Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6864052Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6864156Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6864360Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6864473Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6864577Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6864693Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6864797Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6864897Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6865022Z "path": "CONTEXT.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6865226Z "line": 184 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6865327Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6865426Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6865545Z "path": "docs/MANIFEST.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6865651Z "line": 46 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6865751Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6865841Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6865942Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6866050Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6866165Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6866261Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6866365Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6866514Z "path": "crates/spt-runtime/src/resolve.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6866633Z "line": 222 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6866726Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6866831Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6866978Z "path": "crates/spt-store/src/proc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6867086Z "line": 306 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6867192Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6867288Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6867396Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6867492Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6867597Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6867701Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6867802Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6867955Z "path": "crates/spt/tests/live_resolve_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6868064Z "line": 18 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6868170Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6868269Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6868369Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6868475Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6868584Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6868684Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6868781Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6868926Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6869119Z "line": 1656 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6869218Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6869323Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6869467Z "path": "crates/spt-runtime/src/resolve.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6869575Z "line": 316 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6869679Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6869780Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6869923Z "path": "crates/spt-runtime/src/resolve.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6870027Z "line": 332 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6870124Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6870223Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6870367Z "path": "crates/spt-runtime/src/resolve.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6870462Z "line": 345 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6870566Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6870662Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6870805Z "path": "crates/spt-store/src/proc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6870919Z "line": 422 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6871020Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6871124Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6871258Z "path": "crates/spt-store/src/proc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6871369Z "line": 436 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6871477Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6871563Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6871659Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6871754Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6871858Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6871953Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6872058Z "id": "REQ-MESH-1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6874207Z "title": "Membership proof (seed-proof): symmetric current-epoch seed-knowledge replaces is_trusted at EVERY inbound gate (registry apply, WAN receive, sync, notif, connection accept). MK = HKDF(seed, domain ‖ subnet_id ‖ seed_epoch); mutual channel-bound challenge-response at connect (transcript binds both handshake-proven node pubkeys, both nonces, subnet_id, seed_epoch, role); verified once per connection, cached on the broker ConnEntry, kept warm via QUIC keep-alive so re-proof is restart/partition/rotation-only. Exact-epoch match (re-seed is the sole N-1 exception). SECURITY INVARIANTS: channel-bound (no cross-connection replay), mutual, accepts a member it never paired (the mesh property).", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6874526Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6874631Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6874730Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6874834Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6874934Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6875042Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6875147Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6875262Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6875371Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6875476Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6875582Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6875690Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6875795Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6875905Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6876052Z "path": "crates/spt-daemon/src/nethost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6876173Z "line": 972 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6876272Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6876372Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6876525Z "path": "crates/spt-daemon/src/seedproofx.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6876634Z "line": 38 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6876745Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6876845Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6876997Z "path": "crates/spt-daemon/src/seedproofx.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6877103Z "line": 161 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6877207Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6877301Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6877449Z "path": "crates/spt-daemon/src/seedproofx.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6877562Z "line": 206 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6877656Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6877757Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6877905Z "path": "crates/spt-net/src/net/endpoint.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6878014Z "line": 57 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6878125Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6878224Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6878382Z "path": "crates/spt-net/src/net/mesh/seedproof.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6878491Z "line": 24 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6878586Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6878692Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6878843Z "path": "crates/spt-net/src/net/mesh/seedproof.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6879021Z "line": 142 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6879121Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6879221Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6879369Z "path": "crates/spt-net/src/net/mesh/seedproof.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6879478Z "line": 162 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6879578Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6879674Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6879764Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6879869Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6879975Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6880084Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6880192Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6880360Z "path": "crates/spt-daemon/tests/seedproofx.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6880469Z "line": 67 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6880573Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6880670Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6880821Z "path": "crates/spt-daemon/tests/seedproofx.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6880927Z "line": 93 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6881036Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6881136Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6881280Z "path": "crates/spt-daemon/tests/seedproofx.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6881389Z "line": 117 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6881488Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6881595Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6881742Z "path": "crates/spt-daemon/tests/seedproofx.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6881842Z "line": 134 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6881938Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6882027Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6882132Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6882234Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6882447Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6882546Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6882650Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6882801Z "path": "crates/spt-net/src/net/endpoint.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6882902Z "line": 427 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6883097Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6883198Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6883355Z "path": "crates/spt-net/src/net/mesh/seedproof.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6883464Z "line": 376 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6883551Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6883646Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6883794Z "path": "crates/spt-net/src/net/mesh/seedproof.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6883894Z "line": 412 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6883994Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6884098Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6884256Z "path": "crates/spt-net/src/net/mesh/seedproof.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6884361Z "line": 427 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6884467Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6884566Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6884718Z "path": "crates/spt-net/src/net/mesh/seedproof.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6884825Z "line": 438 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6884923Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6885029Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6885177Z "path": "crates/spt-net/src/net/mesh/seedproof.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6885280Z "line": 449 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6885385Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6885490Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6885640Z "path": "crates/spt-net/src/net/mesh/seedproof.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6885745Z "line": 460 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6885851Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6885945Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6886103Z "path": "crates/spt-net/src/net/mesh/seedproof.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6886208Z "line": 496 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6886312Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6886409Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6886565Z "path": "crates/spt-net/src/net/mesh/seedproof.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6886675Z "line": 519 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6886766Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6886861Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6887009Z "path": "crates/spt-net/src/net/mesh/seedproof.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6887128Z "line": 546 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6887233Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6887329Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6887429Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6887528Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6887630Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6887729Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6887838Z "id": "REQ-MESH-2", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6890530Z "title": "Member roster: node-level union-merge grow-set (per member: pubkey, label, machine_id, last-known address, last-seen — NOT the seed), the discovery directory the mesh dials by. Seeded IN FULL at pairing (seed-holder hands joiner the whole current roster, incl. offline members — folds in deferred pairing-time hostname capture + post-join address seeding); each node authors its own entry stamped with its lease_epoch, merged strictly-greater-wins (the node_label lease); exchanged only over seed-proof'd member connections; forgery-inert (a fake entry names a pubkey that still can't seed-proof). Removal needs a TOMBSTONE — a per-pubkey revoked marker that propagates, dominates the entry, gates admission (seed-proof ∧ ¬tombstoned), and prevents reinsert; cleared by a completed re-pair of that pubkey. Persists through silence (offline member keeps its entry).", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6890663Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6890771Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6890876Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6890973Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6891076Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6891172Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6891272Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6891381Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6891492Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6891597Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6891826Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6891930Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6892030Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6892126Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6892273Z "path": "crates/spt-daemon/src/nethost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6892378Z "line": 807 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6892588Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6892683Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6892837Z "path": "crates/spt-daemon/src/pairhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6892940Z "line": 118 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6893049Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6893145Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6893295Z "path": "crates/spt-daemon/src/pairhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6893400Z "line": 347 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6893501Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6893605Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6893743Z "path": "crates/spt-daemon/src/pairhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6893853Z "line": 389 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6893967Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6894068Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6894211Z "path": "crates/spt-daemon/src/pairhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6894325Z "line": 403 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6894431Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6894536Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6894688Z "path": "crates/spt-daemon/src/pairhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6894788Z "line": 492 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6894888Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6894993Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6895126Z "path": "crates/spt-daemon/src/pairhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6895240Z "line": 507 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6895346Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6895455Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6895603Z "path": "crates/spt-daemon/src/pairhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6895709Z "line": 534 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6895817Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6895916Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6896083Z "path": "crates/spt-daemon/src/seedproofx.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6896177Z "line": 207 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6896286Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6896392Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6896534Z "path": "crates/spt-daemon/src/seedproofx.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6896655Z "line": 755 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6896754Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6896863Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6897002Z "path": "crates/spt-daemon/src/seedproofx.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6897116Z "line": 816 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6897221Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6897322Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6897469Z "path": "crates/spt-daemon/src/seedproofx.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6897579Z "line": 869 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6897683Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6897788Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6897937Z "path": "crates/spt-daemon/src/seedproofx.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6898045Z "line": 891 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6898151Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6898257Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6898398Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6898507Z "line": 122 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6898607Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6898715Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6898858Z "path": "crates/spt-store/src/roster.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6899039Z "line": 44 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6899139Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6899245Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6899377Z "path": "crates/spt-store/src/roster.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6899497Z "line": 184 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6899597Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6899701Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6899836Z "path": "crates/spt-store/src/roster.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6899945Z "line": 211 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6900035Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6900136Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6900388Z "path": "crates/spt-store/src/roster.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6900494Z "line": 251 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6900598Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6900689Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6900833Z "path": "crates/spt-store/src/roster.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6901027Z "line": 275 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6901133Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6901237Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6901374Z "path": "crates/spt-store/src/roster.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6901470Z "line": 289 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6901566Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6901665Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6901795Z "path": "crates/spt-store/src/roster.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6901899Z "line": 300 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6902008Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6902105Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6902242Z "path": "crates/spt-store/src/roster.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6902356Z "line": 313 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6902457Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6902548Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6902647Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6902749Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6902852Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6902967Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6903063Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6903220Z "path": "crates/spt-daemon/tests/rosterprop.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6903325Z "line": 116 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6903435Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6903538Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6903690Z "path": "crates/spt-daemon/tests/rosterprop.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6903804Z "line": 181 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6903903Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6904003Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6904105Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6904208Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6904327Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6904423Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6904527Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6904681Z "path": "crates/spt-daemon/src/seedproofx.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6904781Z "line": 999 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6904885Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6904991Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6905147Z "path": "crates/spt-daemon/src/seedproofx.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6905263Z "line": 1016 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6905372Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6905467Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6905621Z "path": "crates/spt-daemon/src/seedproofx.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6905724Z "line": 1024 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6905834Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6905940Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6906082Z "path": "crates/spt-daemon/src/seedproofx.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6906198Z "line": 1048 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6906293Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6906396Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6906553Z "path": "crates/spt-net/src/net/pairing/wire.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6906675Z "line": 1499 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6906784Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6906889Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6907032Z "path": "crates/spt-store/src/roster.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6907141Z "line": 347 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6907247Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6907352Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6907486Z "path": "crates/spt-store/src/roster.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6907595Z "line": 370 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6907694Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6907805Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6907938Z "path": "crates/spt-store/src/roster.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6908043Z "line": 407 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6908154Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6908253Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6908391Z "path": "crates/spt-store/src/roster.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6908497Z "line": 431 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6908677Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6908778Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6908925Z "path": "crates/spt-store/src/roster.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6909120Z "line": 483 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6909214Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6909318Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6909557Z "path": "crates/spt-store/src/roster.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6909670Z "line": 499 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6909772Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6909881Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6910023Z "path": "crates/spt-store/src/roster.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6910133Z "line": 514 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6910233Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6910333Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6910472Z "path": "crates/spt-store/src/roster.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6910576Z "line": 531 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6910682Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6910786Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6910882Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6910992Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6911078Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6911172Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6911277Z "id": "REQ-MESH-3", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6913008Z "title": "Mesh row fan-out: registry rows stay OWN-AUTHORED; the only change is the push target widens from directly-paired peers to ALL roster members (a wider DIRECT fan-out, never a third-party relay). Every row/message still arrives from its author over a handshake → KNOWN-HAZARDS 7.5 (origin = handshake node) and 4.10 (eviction lease: any future update comes from that node itself, alive) PRESERVED VERBATIM. Closes the staggered A→B→C repro: C (roster-seeded with A at pairing) initiates to A, seed-proof admits C unpaired, A learns C, both push directly.", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6913136Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6913241Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6913347Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6913446Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6913547Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6913656Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6913770Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6913890Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6913995Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6914103Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6914208Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6914312Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6914429Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6914530Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6914679Z "path": "crates/spt-daemon/src/pump/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6914782Z "line": 641 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6914892Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6914993Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6915092Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6915193Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6915307Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6915406Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6915508Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6915665Z "path": "crates/spt-daemon/tests/mesh.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6915770Z "line": 373 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6915870Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6915975Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6916113Z "path": "crates/spt-daemon/tests/mesh.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6916228Z "line": 436 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6916328Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6916433Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6916548Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6916637Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6916753Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6916858Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6916965Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6917113Z "path": "crates/spt-daemon/src/pump/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6917222Z "line": 910 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6917330Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6917430Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6917536Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6917635Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6917741Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6917845Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6917949Z "id": "REQ-MESH-4", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6920283Z "title": "Revoke + timeboxed seed rotation + re-seed grace: `spt subnet revoke ...` (list, elevation-gated, revoke-only) writes roster tombstones immediately, then schedules ONE seed rotation (re-mint seed, bump seed_epoch, push new seed CONFIDENTIALLY over member-auth'd TLS connections — never in roster/registry gossip — force-drop revokees) at the close of a coalescing window (default 1h); further revokes in the window join the same rotation (one epoch bump). `--force-rotate-seed` rotates immediately (compromised-node path). RE-SEED GRACE: a node proving the immediately-prior epoch (N-1) AND still on the roster gets a re-seed-only restricted connection (auto-heals a benign offliner); revoked/off-roster denied; ≥2 stale → re-pair.", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6920603Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6920708Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6920807Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6920908Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6921013Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6921108Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6921213Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6921333Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6921432Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6921542Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6921648Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6921761Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6921867Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6921986Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6922148Z "path": "crates/spt-daemon/src/pump/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6922254Z "line": 33 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6922361Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6922465Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6922624Z "path": "crates/spt-daemon/src/seedproofx.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6922728Z "line": 68 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6922833Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6922939Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6923086Z "path": "crates/spt-daemon/src/seedproofx.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6923192Z "line": 111 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6923291Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6923400Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6923540Z "path": "crates/spt-daemon/src/seedproofx.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6923644Z "line": 462 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6923744Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6923850Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6924002Z "path": "crates/spt-daemon/src/seedproofx.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6924112Z "line": 711 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6924216Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6924316Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6924460Z "path": "crates/spt-daemon/src/seedproofx.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6924560Z "line": 725 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6924663Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6924768Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6924900Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6925004Z "line": 132 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6925104Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6925200Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6925342Z "path": "crates/spt-store/src/rotation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6925448Z "line": 26 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6925548Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6925652Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6925806Z "path": "crates/spt-store/src/rotation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6925910Z "line": 97 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6926020Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6926125Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6926268Z "path": "crates/spt-store/src/rotation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6926378Z "line": 119 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6926468Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6926573Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6926717Z "path": "crates/spt-store/src/subnet.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6926831Z "line": 82 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6926935Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6927032Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6927173Z "path": "crates/spt-store/src/subnet.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6927284Z "line": 111 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6927389Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6927582Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6927730Z "path": "crates/spt-store/src/subnet.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6927838Z "line": 232 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6927938Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6928049Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6928185Z "path": "crates/spt-store/src/subnet.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6928368Z "line": 245 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6928472Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6928577Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6928706Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6928815Z "line": 4665 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6928925Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6929121Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6929225Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6929326Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6929445Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6929550Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6929651Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6929802Z "path": "crates/spt-daemon/tests/reseed.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6929908Z "line": 98 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6930003Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6930097Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6930245Z "path": "crates/spt-daemon/tests/reseed.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6930348Z "line": 140 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6930457Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6930557Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6930659Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6930757Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6930863Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6930977Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6931081Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6931235Z "path": "crates/spt-daemon/src/pump/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6931344Z "line": 178 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6931444Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6934371Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6934571Z "path": "crates/spt-daemon/src/pump/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6934691Z "line": 242 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6934796Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6934895Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6935050Z "path": "crates/spt-daemon/src/seedproofx.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6935157Z "line": 1079 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6935261Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6935367Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6935536Z "path": "crates/spt-daemon/src/seedproofx.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6935640Z "line": 1109 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6935727Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6935831Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6935989Z "path": "crates/spt-daemon/src/seedproofx.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6936099Z "line": 1129 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6936203Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6936304Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6936465Z "path": "crates/spt-net/src/net/mesh/seedproof.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6936575Z "line": 602 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6936676Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6936766Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6936923Z "path": "crates/spt-store/src/rotation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6937033Z "line": 148 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6937133Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6937238Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6937381Z "path": "crates/spt-store/src/rotation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6937491Z "line": 169 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6937592Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6937700Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6937849Z "path": "crates/spt-store/src/rotation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6937954Z "line": 181 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6938053Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6938157Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6938295Z "path": "crates/spt-store/src/rotation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6938403Z "line": 202 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6938507Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6938609Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6938746Z "path": "crates/spt-store/src/subnet.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6938861Z "line": 375 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6939191Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6939295Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6939442Z "path": "crates/spt-store/src/subnet.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6939543Z "line": 407 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6939642Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6939839Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6939976Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6940081Z "line": 10052 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6940182Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6940286Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6940386Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6940488Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6940592Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6940695Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6940800Z "id": "REQ-MESH-5", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6942280Z "title": "Hard cutover from pairwise trust: delete peers.json + the is_trusted authorization path (no migration — expendable test fleet, re-pairs fresh under the new model, user decision 2026-06-08). Warn-on-change DEMOTED from a gate to an awareness notice anchored on machine_id (not label): 'machine M, last seen as K1, now presents K2' — fires the same event as the REQ-SUBNET-7 re-pair overwrite. The TrustStore/peers.json code and its call sites are removed, not left dead.", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6942406Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6942519Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6942619Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6942716Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6942819Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6942929Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6943045Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6943162Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6943258Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6943364Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6943468Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6943577Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6943677Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6943839Z "path": "crates/spt-daemon/src/notifsync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6943948Z "line": 61 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6944054Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6944158Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6944312Z "path": "crates/spt-daemon/src/notifsync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6944421Z "line": 109 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6944530Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6944626Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6944774Z "path": "crates/spt-daemon/src/pairhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6944878Z "line": 104 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6944985Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6945083Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6945227Z "path": "crates/spt-daemon/src/propagate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6945342Z "line": 105 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6945446Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6945551Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6945707Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6945821Z "line": 85 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6945922Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6946030Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6946186Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6946297Z "line": 250 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6946387Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6946491Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6946635Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6946744Z "line": 314 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6946849Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6946945Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6947097Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6947203Z "line": 767 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6947303Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6947412Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6947542Z "path": "crates/spt-daemon/src/sync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6947646Z "line": 101 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6947741Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6947833Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6947979Z "path": "crates/spt-store/src/roster.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6948181Z "line": 193 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6948284Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6948385Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6948491Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6948594Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6948707Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6948822Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6949068Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6949174Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6949292Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6949401Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6949507Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6949654Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6949760Z "line": 1009 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6949860Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6949964Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6950098Z "path": "crates/spt-store/src/roster.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6950207Z "line": 462 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6950312Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6950413Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6950527Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6950627Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6950724Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6950813Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6950918Z "id": "REQ-MESH-6", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6952206Z "title": "Concurrent liveness probes: `spt subnet status --nodes` fans out its offline/serve-probes (REQ-SUBNET-5) CONCURRENTLY — total wall-time bounded by the single-probe ceiling (~3s), never k×ceiling. The mesh makes a node see ALL members (many possibly offline), so a serial probe loop would be offline_count×3s. (Planning verifies the current REQ-SUBNET-5 probe loop's behavior and fixes it if serial.)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6952327Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6952421Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6952530Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6952627Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6952732Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6952822Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6952937Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6953042Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6953151Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6953252Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6953366Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6953466Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6953567Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6953709Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6953818Z "line": 4181 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6953924Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6954024Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6954127Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6954228Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6954343Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6954446Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6954552Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6954647Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6954756Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6954857Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6954962Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6955090Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6955196Z "line": 10602 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6955300Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6955400Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6955530Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6955634Z "line": 10629 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6955739Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6955840Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6955977Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6956087Z "line": 10653 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6956189Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6956291Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6956391Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6956491Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6956590Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6956689Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6956794Z "id": "REQ-MIGRATE-1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6957004Z "title": "Auto-detect and migrate a legacy claude_skill_owl install", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6957109Z "requiredStages": [], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6957219Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6957328Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6957439Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6957652Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6957754Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6957853Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6957967Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6958083Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6958186Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6958407Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6958515Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6958620Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6958722Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6958816Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6958921Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6959107Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6959211Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6959316Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6959415Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6959518Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6959618Z "id": "REQ-MSG-1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6960101Z "title": "Local message delivery: TCP-first to a registered address, spool fallback when offline; id->address via registry (stale-clean first); reply routing (__REPLY_TO__)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6960205Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6960306Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6960415Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6960515Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6960615Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6960729Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6960839Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6960945Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6961049Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6961154Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6961260Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6961373Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6961478Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6961570Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6961716Z "path": "crates/spt-msg/src/deliver.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6961815Z "line": 28 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6961921Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6962019Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6962161Z "path": "crates/spt-msg/src/deliver.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6962276Z "line": 94 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6962376Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6962475Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6962610Z "path": "crates/spt-msg/src/deliver.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6962715Z "line": 127 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6962819Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6962920Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6963062Z "path": "crates/spt-msg/src/deliver.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6963163Z "line": 149 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6963258Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6963363Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6963497Z "path": "crates/spt-msg/src/deliver.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6963602Z "line": 174 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6963706Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6963812Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6963950Z "path": "crates/spt-msg/src/listener.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6964054Z "line": 18 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6964156Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6964259Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6964388Z "path": "crates/spt-msg/src/ring.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6964499Z "line": 13 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6964602Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6964706Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6964836Z "path": "crates/spt-msg/src/ring.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6964945Z "line": 62 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6965054Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6965156Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6965284Z "path": "crates/spt-msg/src/wire.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6965393Z "line": 13 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6965490Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6965585Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6965684Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6965785Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6965894Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6966008Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6966110Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6966270Z "path": "crates/spt-msg/tests/killer_quickstart.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6966490Z "line": 9 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6966581Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6966676Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6966838Z "path": "crates/spt-msg/tests/killer_quickstart.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6966946Z "line": 56 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6967141Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6967235Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6967398Z "path": "crates/spt-msg/tests/killer_quickstart.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6967507Z "line": 113 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6967602Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6967703Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6967808Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6967912Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6968018Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6968132Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6968231Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6968361Z "path": "crates/spt-msg/src/deliver.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6968461Z "line": 203 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6968570Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6968671Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6968804Z "path": "crates/spt-msg/src/deliver.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6968909Z "line": 232 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6969089Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6969195Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6969320Z "path": "crates/spt-msg/src/deliver.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6969438Z "line": 277 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6969534Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6969635Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6969776Z "path": "crates/spt-msg/src/deliver.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6969881Z "line": 300 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6969985Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6970088Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6970226Z "path": "crates/spt-msg/src/deliver.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6970337Z "line": 325 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6970441Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6970546Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6970684Z "path": "crates/spt-msg/src/listener.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6970798Z "line": 204 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6970904Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6971004Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6971147Z "path": "crates/spt-msg/src/listener.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6971252Z "line": 237 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6971356Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6971456Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6971600Z "path": "crates/spt-msg/src/listener.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6971699Z "line": 251 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6971801Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6971905Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6972043Z "path": "crates/spt-msg/src/listener.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6972154Z "line": 263 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6972248Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6972352Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6972481Z "path": "crates/spt-msg/src/ring.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6972584Z "line": 162 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6972692Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6972793Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6972927Z "path": "crates/spt-msg/src/ring.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6973031Z "line": 242 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6973137Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6973242Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6973370Z "path": "crates/spt-msg/src/wire.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6973480Z "line": 134 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6973570Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6973674Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6973795Z "path": "crates/spt-msg/src/wire.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6973904Z "line": 153 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6974009Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6974110Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6974209Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6974304Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6974420Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6974519Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6974633Z "id": "REQ-MSG-2", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6974939Z "title": "spt binary CLI surface: send/ring/ready(+--once)/list/stop/whoami, stable arg shapes + exit codes", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6975167Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6975266Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6975372Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6975473Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6975571Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6975682Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6975900Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6976006Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6976111Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6976210Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6976326Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6976435Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6976544Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6976679Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6976773Z "line": 11 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6976873Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6976970Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6977102Z "path": "crates/spt/src/main.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6977208Z "line": 8 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6977323Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6977417Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6977521Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6977626Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6977734Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6977847Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6977948Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6978053Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6978167Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6978273Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6978368Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6978496Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6978612Z "line": 7717 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6978716Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6978811Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6979021Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6979121Z "line": 7759 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6979227Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6979326Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6979455Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6979566Z "line": 7808 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6979664Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6979760Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6979885Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6979988Z "line": 7831 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6980089Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6980200Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6980321Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6980431Z "line": 9807 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6980536Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6980638Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6980763Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6980863Z "line": 9816 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6980967Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6981067Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6981192Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6981301Z "line": 9830 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6981402Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6981502Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6981597Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6981692Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6981784Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6981893Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6982002Z "id": "REQ-MSG-3", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6982418Z "title": "Ready-agent lifecycle: register perch (info.json + listener + registry address) on ready, drain spooled backlog on startup, clean teardown", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6982545Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6982651Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6982757Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6982860Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6982964Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6983070Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6983172Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6983286Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6983396Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6983501Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6983610Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6983730Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6983835Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6984031Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6984182Z "path": "crates/spt-msg/src/listener.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6984288Z "line": 19 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6984388Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6984497Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6984627Z "path": "crates/spt-msg/src/ready.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6984826Z "line": 21 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6984927Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6985022Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6985155Z "path": "crates/spt-msg/src/ready.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6985257Z "line": 48 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6985361Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6985461Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6985596Z "path": "crates/spt-msg/src/ready.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6985704Z "line": 174 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6985803Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6985903Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6986009Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6986113Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6986233Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6986342Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6986446Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6986614Z "path": "crates/spt-msg/tests/killer_quickstart.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6986723Z "line": 10 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6986828Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6986933Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6987090Z "path": "crates/spt-msg/tests/killer_quickstart.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6987201Z "line": 56 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6987300Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6987410Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6987512Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6987620Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6987738Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6987836Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6987939Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6988067Z "path": "crates/spt-msg/src/ready.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6988181Z "line": 228 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6988285Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6988384Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6988508Z "path": "crates/spt-msg/src/ready.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6988613Z "line": 247 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6988713Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6988813Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6989008Z "path": "crates/spt-msg/src/ready.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6989119Z "line": 270 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6989218Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6989323Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6989415Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6989524Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6989619Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6989724Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6989829Z "id": "REQ-MSG-4", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6990703Z "title": "Listener stream stdout emits EVENT envelope lines (sister-format, ADR-0001): parse the __REPLY_TO__ frame, pass pre-formed typed envelopes through verbatim (no double-wrap), compose otherwise, chunk oversized lines into EVENT-PART", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6990826Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6990934Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6991043Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6991147Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6991251Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6991361Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6991462Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6991580Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6991705Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6991805Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6991899Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6992010Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6992120Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6992219Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6992349Z "path": "crates/spt-msg/src/emit.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6992458Z "line": 19 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6992562Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6992664Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6992806Z "path": "crates/spt-msg/src/emit.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6992921Z "line": 46 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6993120Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6993221Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6993364Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6993472Z "line": 532 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6993568Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6993672Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6993808Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6994028Z "line": 3110 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6994132Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6994233Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6994338Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6994428Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6994543Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6994653Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6994757Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6994901Z "path": "crates/spt/tests/quickstart_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6995005Z "line": 98 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6995115Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6995212Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6995358Z "path": "crates/spt/tests/quickstart_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6995468Z "line": 128 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6995568Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6995668Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6995773Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6995870Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6995977Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6996093Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6996198Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6996325Z "path": "crates/spt-msg/src/emit.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6996430Z "line": 68 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6996526Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6996630Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6996763Z "path": "crates/spt-msg/src/emit.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6996874Z "line": 79 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6996983Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6997078Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6997208Z "path": "crates/spt-msg/src/emit.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6997302Z "line": 90 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6997407Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6997508Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6997631Z "path": "crates/spt-msg/src/emit.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6997737Z "line": 151 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6997837Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6997941Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6998042Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6998152Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6998246Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6998352Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6998471Z "id": "REQ-MSG-5", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6999335Z "title": "user-msg envelope kind + daemon identity gate: a Gateway endpoint / the local user's CLI author user-msg (the user's authority); agent-family senders re-stamped to plain msg; identity-gated never payload-trusted (KH 7.3/7.5); wire-additive (N-1 receivers tolerate the new type)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6999455Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6999559Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6999660Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6999765Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6999864Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.6999970Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7000065Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7000184Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7000289Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7000394Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7000513Z "path": "CONTEXT.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7000624Z "line": 231 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7000728Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7000819Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7000919Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7001024Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7001138Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7001234Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7001339Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7001480Z "path": "crates/spt-daemon/src/wan.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7001590Z "line": 60 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7001698Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7001796Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7001945Z "path": "crates/spt-proto/src/event.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7002154Z "line": 126 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7002246Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7002351Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7002483Z "path": "crates/spt-proto/src/event.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7002589Z "line": 135 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7002694Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7002885Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7003028Z "path": "crates/spt-proto/src/event.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7003137Z "line": 149 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7003243Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7003346Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7003496Z "path": "crates/spt-proto/src/event.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7003586Z "line": 178 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7003700Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7003801Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7003924Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7004037Z "line": 2802 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7004133Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7004232Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7004335Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7004440Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7004545Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7004650Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7004755Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7004898Z "path": "crates/spt/tests/gateway_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7005007Z "line": 19 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7005103Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7005208Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7005317Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7005413Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7005522Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7005622Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7005728Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7005865Z "path": "crates/spt-daemon/src/wan.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7005970Z "line": 192 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7006077Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7006180Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7006328Z "path": "crates/spt-daemon/tests/wanmsg.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7006439Z "line": 154 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7006547Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7006648Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7006787Z "path": "crates/spt-msg/src/emit.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7006895Z "line": 122 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7006995Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7007096Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7007233Z "path": "crates/spt-proto/src/event.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7007333Z "line": 452 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7007420Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7007524Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7007668Z "path": "crates/spt-proto/src/event.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7007777Z "line": 501 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7007886Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7007987Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7008125Z "path": "crates/spt-proto/src/event.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7008225Z "line": 517 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7008326Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7008425Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7008554Z "path": "crates/spt-proto/src/event.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7008669Z "line": 536 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7008759Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7008869Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7009078Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7009206Z "line": 7660 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7009311Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7009409Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7009508Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7009610Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7009710Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7009809Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7009915Z "id": "REQ-MSG-6", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7011575Z "title": "cross-node Gateway user-msg honored via advertised endpoint_type: a user-msg from a Gateway-typed origin survives the receive_wan funnel as user-msg (vs the fail-closed re-stamp), keyed on the QUIC-handshake-proven origin node (never wire `from`). Trust boundary = subnet membership (operator-ratified 2026-06-13); no defense against an in-subnet member forging the type. Instance.endpoint_type is an additive serde-default field extending REQ-INST-7's data model. Absent/unknown type → re-stamp (N-1 rollout grace)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7011789Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7011899Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7012007Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7012197Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7012300Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7012409Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7012510Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7012615Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7012729Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7012830Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7012949Z "path": "CONTEXT.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7013053Z "line": 234 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7013149Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7013235Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7013334Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7013440Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7013558Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7013668Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7013774Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7013931Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7014046Z "line": 177 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7014146Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7014245Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7014404Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7014517Z "line": 428 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7017319Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7017440Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7017612Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7017718Z "line": 451 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7017822Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7017932Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7018070Z "path": "crates/spt-daemon/src/wan.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7018179Z "line": 89 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7018280Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7018375Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7018533Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7018642Z "line": 155 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7018746Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7018843Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7019024Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7019119Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7019239Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7019348Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7019453Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7019550Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7019652Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7019761Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7019857Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7020012Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7020122Z "line": 1746 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7020227Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7020332Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7020460Z "path": "crates/spt-daemon/src/wan.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7020570Z "line": 219 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7020675Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7020780Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7020880Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7020980Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7021076Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7021166Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7021290Z "id": "REQ-MSG-ENVELOPE", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7025082Z "title": "The body envelope (spt-proto::event, the ADR-0001 grammar) is the SOLE canonical arriving-message format at EVERY harness arriving-message surface on an AGENT perch — api listen AND api poll/worker-poll, byte-identical (reverses REQ-MSG-4's 'hook drains keep the raw frame by contract'). SCOPE CARVE-OUT: the shell-command relay (api poll --link, cmd_poll_shell) is a distinct internal transport carrying RAW MAC'd stamped frames the shell child consumes verbatim — NOT an arriving-message surface, deliberately EXEMPT from composition (notify_shell_e2e guards this boundary). __REPLY_TO__ — mis-elevated during the clean-room port to a fake ADR-0001 'stable wire format' (spt-msg/wire.rs, lib.rs) — is REMOVED entirely (spool format_row, the spt-msg TCP frame, emit parse_frame); (from, body) carried structurally, composed once at the delivery boundary. No legacy sister-interop (spt-core never required it). Reply-correlation rebinds onto the structural from / attribute (ADR-0009 access-gate + ADR-0012 Psyche/spt-live reply-target). Self-delimiting by construction → finding F-002 (non-self-delimiting multi-message poll) dissolves. ADR-0020.", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7025450Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7025550Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7025657Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7025761Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7025865Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7025967Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7026071Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7026175Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7026290Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7026391Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7026500Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7026761Z "path": "docs/adr/0020-event-envelope-sole-arriving-format-reply-to-removed.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7026882Z "line": 47 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7027005Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7027110Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7027211Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7027319Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7027434Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7027536Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7027639Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7027764Z "path": "crates/spt-msg/src/emit.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7027879Z "line": 20 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7027968Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7028072Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7028197Z "path": "crates/spt-msg/src/emit.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7028301Z "line": 33 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7028405Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7028507Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7028644Z "path": "crates/spt-msg/src/emit.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7028754Z "line": 47 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7028855Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7029030Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7029165Z "path": "crates/spt-msg/src/emit.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7029279Z "line": 58 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7029383Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7029489Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7029612Z "path": "crates/spt-msg/src/wire.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7029718Z "line": 14 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7029823Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7029927Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7030061Z "path": "crates/spt-msg/src/wire.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7030161Z "line": 27 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7030260Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7030360Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7030492Z "path": "crates/spt-msg/src/wire.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7030596Z "line": 40 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7030701Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7030807Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7030944Z "path": "crates/spt-store/src/spool.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7031049Z "line": 92 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7031150Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7031254Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7031398Z "path": "crates/spt/src/api/delivery.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7031516Z "line": 143 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7031626Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7031717Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7031864Z "path": "crates/spt/src/api/delivery.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7031970Z "line": 216 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7032069Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7032169Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7032309Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7032412Z "line": 533 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7032513Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7032609Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7032746Z "path": "crates/spt/src/api/worker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7032972Z "line": 78 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7033070Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7033155Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7033289Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7033397Z "line": 3111 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7033500Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7033697Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7033802Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7033907Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7034022Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7034135Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7034237Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7034393Z "path": "crates/spt/tests/poll_envelope_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7034498Z "line": 15 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7034603Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7034703Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7034803Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7034909Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7035022Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7035127Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7035238Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7035375Z "path": "crates/spt-msg/src/emit.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7035481Z "line": 102 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7035586Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7035684Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7035813Z "path": "crates/spt-msg/src/emit.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7035926Z "line": 137 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7036025Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7036130Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7036274Z "path": "crates/spt-msg/src/wire.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7036392Z "line": 98 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7036493Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7036593Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7036716Z "path": "crates/spt-msg/src/wire.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7036827Z "line": 106 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7036931Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7037026Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7037151Z "path": "crates/spt-msg/src/wire.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7037255Z "line": 113 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7037355Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7037461Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7037599Z "path": "crates/spt-msg/src/wire.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7037733Z "line": 122 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7037842Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7037947Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7038043Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7038143Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7038237Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7038329Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7038477Z "id": "REQ-MSG-IDLE-TRANSLATION-BINARY", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7043616Z "title": "spt-hosted idle message delivery via an adapter TRANSLATION BINARY (ADR-0022). New opt-in manifest section `[message-idle-translation-binary]` = a TABLE carrying a `path` scalar (doyle OPT-B ruling: modeled as a table, not a bare top-level scalar, so a preceding section cannot silently absorb it + N+1 extensible; spt-core does NOT deny_unknown_fields, so a future key degrades gracefully); spt-core LIFECYCLE-manages it (spawn when the endpoint comes up, terminate when it goes down). The binary is a PURE stdin→stdout filter; spt-core owns EVERY PTY write. stdin (JSON-lines): `{type:\"init\",endpoint_id,node}` first · `{type:\"event\",envelope:\"\"}` per inbound message (ADR-0020 envelope) · `{type:\"input\"}` content-free ping on each operator keystroke (binary tracks user-idle for its own idle-gated buffering; PTY input content NOT duplicated). stdout (JSON-lines): keystroke-commands `{key:…}`/`{delay_ms:…}`/`{text:…}` (extensible). spt-core applies the emitted sequence to the broker PTY ATOMICALLY (the W1 coordination — REQ-HAZARD-INJECT-CONTROL-COEXIST). The daemon poll feed is the ONE idle substrate for both topologies (Q1=A): harness-hosted consumer = the Monitor child, spt-hosted consumer = this binary; spt-core PREFERS a perch's poll listener if one exists (so spt-hosted can run a listener AND keep `spt rc`). Idle-only; busy/mid-turn = adapter hook-injection. Closes the current grounding gap: `api bind` registers no listener port → a listener-less spt-hosted perch SPOOLS inbound (only spooling+adapter-poll works today) → this delivers real inbound into the PTY. The v0.11.0 raw inject is the degenerate `{text:payload}{key:enter}` case. (v0.13.0)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7043859Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7044061Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7044167Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7044272Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7044380Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7044477Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7044577Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7044681Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7044792Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7044901Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7045000Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7045173Z "path": "docs-site/src/harness-contract/manifest.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7045282Z "line": 277 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7045382Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7045487Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7045620Z "path": "docs/MANIFEST.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7045721Z "line": 198 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7045817Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7045916Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7046022Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7046141Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7046259Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7046373Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7046468Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7046618Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7046724Z "line": 1025 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7046825Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7046923Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7047082Z "path": "crates/spt-daemon/src/translation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7047186Z "line": 23 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7047286Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7047387Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7047539Z "path": "crates/spt-daemon/src/translation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7047654Z "line": 91 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7047749Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7047849Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7048003Z "path": "crates/spt-daemon/src/translation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7048106Z "line": 239 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7048211Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7048313Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7048463Z "path": "crates/spt-daemon/src/translation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7048569Z "line": 287 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7048675Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7048778Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7048918Z "path": "crates/spt-daemon/src/translation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7049097Z "line": 311 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7049192Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7049292Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7049441Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7049550Z "line": 60 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7049651Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7049751Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7049904Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7050003Z "line": 889 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7050108Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7050198Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7050309Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7050427Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7050533Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7050643Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7050747Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7050924Z "path": "crates/spt-daemon/tests/inject_control_wedge.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7051027Z "line": 1089 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7051134Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7051239Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7051409Z "path": "crates/spt-daemon/tests/inject_control_wedge.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7051513Z "line": 1194 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7051608Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7051711Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7051869Z "path": "crates/spt-daemon/tests/inject_control_wedge.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7052078Z "line": 1262 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7052169Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7052270Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7052426Z "path": "crates/spt-daemon/tests/inject_control_wedge.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7052627Z "line": 1355 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7052732Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7052838Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7052938Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7053037Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7053143Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7053257Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7053356Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7053510Z "path": "crates/spt-daemon/src/harnesshost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7053619Z "line": 270 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7053720Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7053820Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7053962Z "path": "crates/spt-daemon/src/translation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7054073Z "line": 350 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7054177Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7054281Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7054433Z "path": "crates/spt-daemon/src/translation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7054531Z "line": 381 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7054631Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7054736Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7054884Z "path": "crates/spt-daemon/src/translation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7054983Z "line": 411 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7055089Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7055189Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7055328Z "path": "crates/spt-daemon/src/translation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7055432Z "line": 440 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7055532Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7055637Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7055780Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7055890Z "line": 1181 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7055991Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7056099Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7056204Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7056306Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7056405Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7056510Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7056625Z "id": "REQ-NET-1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7056838Z "title": "WAN messaging first-class, behind default-on net feature flag", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7056962Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7057070Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7057160Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7057264Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7057366Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7057469Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7057574Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7057675Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7057789Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7057894Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7057999Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7058103Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7058204Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7058309Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7058452Z "path": "crates/spt-daemon/src/dispatch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7058563Z "line": 54 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7058657Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7058757Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7058901Z "path": "crates/spt-daemon/src/dispatch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7059091Z "line": 594 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7059192Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7059291Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7059434Z "path": "crates/spt-daemon/src/wan.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7059536Z "line": 130 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7059643Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7059733Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7059877Z "path": "crates/spt-net/src/net/endpoint.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7059977Z "line": 97 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7060081Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7060177Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7060329Z "path": "crates/spt-net/src/net/endpoint.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7060430Z "line": 159 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7060630Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7060730Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7060878Z "path": "crates/spt-net/src/net/endpoint.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7060978Z "line": 175 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7061078Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7061184Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7061428Z "path": "crates/spt-net/src/net/endpoint.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7061536Z "line": 190 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7061627Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7061732Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7061869Z "path": "crates/spt-net/src/net/endpoint.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7061974Z "line": 271 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7062074Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7062173Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7062319Z "path": "crates/spt-net/src/net/endpoint.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7062419Z "line": 306 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7062521Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7062624Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7062769Z "path": "crates/spt-net/src/net/endpoint.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7062877Z "line": 312 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7062967Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7063074Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7063220Z "path": "crates/spt-net/src/net/endpoint.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7063321Z "line": 318 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7063421Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7063526Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7063674Z "path": "crates/spt-net/src/net/endpoint.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7063778Z "line": 334 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7063888Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7063994Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7064145Z "path": "crates/spt-net/src/net/endpoint.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7064246Z "line": 354 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7064347Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7064450Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7064585Z "path": "crates/spt-net/src/net/wanmsg.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7064695Z "line": 35 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7064798Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7064902Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7065036Z "path": "crates/spt-net/src/net/wanmsg.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7065148Z "line": 85 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7065249Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7065354Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7065496Z "path": "crates/spt-store/src/spool.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7065592Z "line": 138 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7065697Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7065801Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7065931Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7066041Z "line": 2953 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7066144Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7066251Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7066384Z "path": "crates/spt/src/wansend.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7066493Z "line": 17 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7066594Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7066693Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7066789Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7066890Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7067007Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7067108Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7067214Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7067360Z "path": "crates/spt-daemon/tests/dispatch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7067474Z "line": 341 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7067569Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7067677Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7067824Z "path": "crates/spt-daemon/tests/twohost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7067926Z "line": 675 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7068015Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7068116Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7068269Z "path": "crates/spt-daemon/tests/twohost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7068373Z "line": 973 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7068474Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7068574Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7068673Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7068789Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7069069Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7069184Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7069289Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7069438Z "path": "crates/spt-daemon/src/dispatch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7069541Z "line": 651 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7069641Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7069837Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7069990Z "path": "crates/spt-daemon/src/dispatch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7070091Z "line": 686 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7070199Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7070302Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7070457Z "path": "crates/spt-daemon/tests/dispatch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7070556Z "line": 940 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7070661Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7070752Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7070894Z "path": "crates/spt-daemon/tests/wanmsg.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7071009Z "line": 201 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7071105Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7071218Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7071363Z "path": "crates/spt-net/src/net/endpoint.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7071476Z "line": 442 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7071576Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7071678Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7071819Z "path": "crates/spt-net/src/net/endpoint.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7071929Z "line": 456 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7072040Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7072139Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7072282Z "path": "crates/spt-net/src/net/endpoint.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7072387Z "line": 475 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7072495Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7072600Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7072747Z "path": "crates/spt-net/src/net/wanmsg.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7072860Z "line": 120 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7072956Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7073057Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7073184Z "path": "crates/spt-net/src/net/wanmsg.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7073299Z "line": 163 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7073409Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7073508Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7073643Z "path": "crates/spt-store/src/spool.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7073752Z "line": 530 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7073857Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7073958Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7074086Z "path": "crates/spt/src/wansend.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7074195Z "line": 616 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7074296Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7074405Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7074530Z "path": "crates/spt/src/wansend.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7074635Z "line": 1006 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7074735Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7074840Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7074940Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7075029Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7075131Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7075231Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7075349Z "id": "REQ-NET-2", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7075558Z "title": "n0 relay default + self-host knob + plain-language disclosure", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7075666Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7075770Z "impl" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7075881Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7075990Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7076099Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7076215Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7076328Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7076428Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7076534Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7076639Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7076757Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7076863Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7077005Z "path": "crates/spt-daemon/src/config.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7077116Z "line": 57 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7077220Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7077329Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7077474Z "path": "crates/spt-net/src/net/endpoint.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7077683Z "line": 71 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7077789Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7077891Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7078044Z "path": "crates/spt-net/src/net/endpoint.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7078148Z "line": 81 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7078246Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7078428Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7078571Z "path": "crates/spt-net/src/net/endpoint.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7078680Z "line": 159 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7078781Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7078885Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7079096Z "path": "crates/spt-net/src/net/endpoint.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7079205Z "line": 175 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7079305Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7079411Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7079557Z "path": "crates/spt-net/src/net/endpoint.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7079668Z "line": 190 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7079768Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7079872Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7079978Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7080068Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7080192Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7080293Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7080397Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7080502Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7080613Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7080712Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7080816Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7080964Z "path": "crates/spt-daemon/src/config.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7081069Z "line": 402 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7081168Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7081264Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7081364Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7081469Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7081560Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7081655Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7081760Z "id": "REQ-NET-3", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7081960Z "title": "Cross-node Psyche sync over P2P replaces gh-repo-sync", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7082079Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7082189Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7082294Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7082394Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7082504Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7082604Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7082727Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7082833Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7082933Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7083042Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7083146Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7083256Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7083349Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7083497Z "path": "crates/spt-daemon/src/sync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7083612Z "line": 39 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7083711Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7083816Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7083940Z "path": "crates/spt-daemon/src/sync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7084049Z "line": 182 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7084151Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7084260Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7084388Z "path": "crates/spt-daemon/src/sync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7084494Z "line": 333 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7084594Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7084684Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7084823Z "path": "crates/spt-net/src/net/sync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7084932Z "line": 36 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7085036Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7085143Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7085285Z "path": "crates/spt-store/src/branchstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7085395Z "line": 158 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7085500Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7085604Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7085744Z "path": "crates/spt-store/src/branchstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7085853Z "line": 238 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7085956Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7086051Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7086207Z "path": "crates/spt-store/src/branchstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7086421Z "line": 259 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7086517Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7086616Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7086765Z "path": "crates/spt-store/src/branchstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7086865Z "line": 317 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7087056Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7087151Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7087303Z "path": "crates/spt-store/src/branchstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7087419Z "line": 336 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7087518Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7087618Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7087766Z "path": "crates/spt-store/src/branchstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7087866Z "line": 374 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7087967Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7088072Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7088209Z "path": "crates/spt-store/src/branchstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7088320Z "line": 419 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7088429Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7088537Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7088680Z "path": "crates/spt-store/src/branchstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7088783Z "line": 432 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7088883Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7089061Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7089207Z "path": "crates/spt-store/src/syncmerge.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7089327Z "line": 29 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7089436Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7089526Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7089675Z "path": "crates/spt-store/src/syncmerge.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7089783Z "line": 72 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7089890Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7089994Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7090137Z "path": "crates/spt-store/src/syncmerge.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7090253Z "line": 123 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7090351Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7090456Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7090558Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7090671Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7090790Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7090897Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7090995Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7091086Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7091197Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7091300Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7091405Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7091548Z "path": "crates/spt-daemon/tests/sync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7091643Z "line": 223 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7091752Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7091853Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7092000Z "path": "crates/spt-daemon/tests/sync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7092100Z "line": 351 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7092206Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7092310Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7092439Z "path": "crates/spt-daemon/tests/sync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7092554Z "line": 504 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7092649Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7092764Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7092925Z "path": "crates/spt-net/src/net/sync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7093035Z "line": 93 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7093137Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7093240Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7093378Z "path": "crates/spt-net/src/net/sync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7093484Z "line": 142 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7093588Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7093687Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7093834Z "path": "crates/spt-store/src/syncmerge.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7093952Z "line": 315 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7094047Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7094148Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7094286Z "path": "crates/spt-store/src/syncmerge.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7094391Z "line": 355 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7094491Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7094586Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7094730Z "path": "crates/spt-store/src/syncmerge.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7094934Z "line": 494 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7095040Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7095145Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7095254Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7095360Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7095454Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7095549Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7095769Z "id": "REQ-NODE-IDENTITY", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7096051Z "title": "Ed25519 identity primitive: keypair, detached sign/verify, stable pubkey<->hex", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7096169Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7096280Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7096380Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7096469Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7096578Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7096678Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7096791Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7096895Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7097006Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7097110Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7097220Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7097330Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7097434Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7097583Z "path": "crates/spt-proto/src/identity.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7097692Z "line": 60 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7097796Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7097902Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7098040Z "path": "crates/spt-proto/src/identity.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7098149Z "line": 68 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7098250Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7098355Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7098498Z "path": "crates/spt-proto/src/identity.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7098603Z "line": 86 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7098711Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7098813Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7099022Z "path": "crates/spt-proto/src/identity.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7099126Z "line": 120 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7099231Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7099339Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7099476Z "path": "crates/spt-proto/src/identity.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7099582Z "line": 127 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7099682Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7099781Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7099925Z "path": "crates/spt-proto/src/identity.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7100029Z "line": 143 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7100130Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7100240Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7100382Z "path": "crates/spt-store/src/nodeid.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7100493Z "line": 16 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7100592Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7100682Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7100789Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7100893Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7101002Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7101113Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7104157Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7104299Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7104413Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7104545Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7104636Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7104803Z "path": "crates/spt-proto/src/identity.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7104913Z "line": 199 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7105009Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7105118Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7105276Z "path": "crates/spt-proto/src/identity.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7105380Z "line": 218 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7105480Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7105581Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7105728Z "path": "crates/spt-proto/src/identity.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7105833Z "line": 234 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7105939Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7106038Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7106181Z "path": "crates/spt-proto/src/identity.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7106277Z "line": 256 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7106381Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7106481Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7106758Z "path": "crates/spt-store/src/nodeid.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7106874Z "line": 124 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7106973Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7107076Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7107215Z "path": "crates/spt-store/src/nodeid.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7107318Z "line": 140 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7107537Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7107637Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7107780Z "path": "crates/spt-store/src/nodeid.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7107885Z "line": 155 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7107985Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7108079Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7108190Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7108286Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7108389Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7108496Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7108600Z "id": "REQ-NOTIF-1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7109102Z "title": "Notification primitive: per-subnet replicated spool, seen/dismissed, resurface-at-boundary, subsumes update+consent prompts", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7109211Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7109316Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7109421Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7109521Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7109624Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7109724Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7109829Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7109946Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7110051Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7110152Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7110256Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7110370Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7110476Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7110585Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7110729Z "path": "crates/spt-daemon/src/dispatch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7110843Z "line": 514 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7110942Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7111043Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7111186Z "path": "crates/spt-daemon/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7111286Z "line": 30 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7111387Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7111496Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7111634Z "path": "crates/spt-daemon/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7111735Z "line": 69 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7111839Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7111940Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7112073Z "path": "crates/spt-daemon/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7112192Z "line": 93 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7112293Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7112384Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7112525Z "path": "crates/spt-daemon/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7112630Z "line": 107 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7112736Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7112839Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7112983Z "path": "crates/spt-daemon/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7113084Z "line": 142 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7113177Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7113284Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7113422Z "path": "crates/spt-daemon/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7113531Z "line": 187 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7113627Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7113731Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7113879Z "path": "crates/spt-daemon/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7113989Z "line": 258 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7114093Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7114194Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7114327Z "path": "crates/spt-daemon/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7114431Z "line": 372 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7114538Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7114638Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7114770Z "path": "crates/spt-daemon/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7114869Z "line": 479 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7114973Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7115077Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7115225Z "path": "crates/spt-daemon/src/notifsync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7115321Z "line": 24 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7115521Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7115621Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7115768Z "path": "crates/spt-daemon/src/notifsync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7115870Z "line": 34 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7115979Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7116073Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7116326Z "path": "crates/spt-daemon/src/notifsync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7116436Z "line": 60 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7116541Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7116645Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7116785Z "path": "crates/spt-daemon/src/notifsync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7116893Z "line": 82 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7116998Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7117095Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7117241Z "path": "crates/spt-daemon/src/notifsync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7117347Z "line": 94 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7117453Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7117556Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7117708Z "path": "crates/spt-daemon/src/psyrelay.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7117822Z "line": 96 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7117930Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7118035Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7118183Z "path": "crates/spt-daemon/src/pump/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7118301Z "line": 44 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7118403Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7118503Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7118649Z "path": "crates/spt-net/src/net/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7118746Z "line": 20 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7118851Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7119027Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7119160Z "path": "crates/spt-net/src/net/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7119265Z "line": 30 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7119371Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7119475Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7119613Z "path": "crates/spt-net/src/net/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7119719Z "line": 50 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7119813Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7119918Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7120052Z "path": "crates/spt-store/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7120156Z "line": 28 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7120260Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7120365Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7120506Z "path": "crates/spt-store/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7120611Z "line": 126 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7120712Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7120812Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7120955Z "path": "crates/spt-store/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7121064Z "line": 161 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7121159Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7121265Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7121388Z "path": "crates/spt-store/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7121497Z "line": 202 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7121595Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7121698Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7121826Z "path": "crates/spt-store/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7121933Z "line": 213 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7122037Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7122136Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7122266Z "path": "crates/spt-store/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7122375Z "line": 238 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7122475Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7122581Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7122704Z "path": "crates/spt-store/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7122815Z "line": 261 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7122915Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7123018Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7123156Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7123271Z "line": 86 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7123371Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7123475Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7123582Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7123681Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7123790Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7123996Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7124100Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7124253Z "path": "crates/spt-daemon/tests/dispatch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7124357Z "line": 285 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7124464Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7124654Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7124807Z "path": "crates/spt-daemon/tests/pump.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7124911Z "line": 145 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7125015Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7125117Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7125263Z "path": "crates/spt-daemon/tests/twohost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7125376Z "line": 684 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7125468Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7125571Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7125718Z "path": "crates/spt-daemon/tests/twohost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7125824Z "line": 1102 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7125928Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7126023Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7126134Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7126233Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7126352Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7126463Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7126562Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7126706Z "path": "crates/spt-daemon/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7126815Z "line": 572 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7126919Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7127021Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7127158Z "path": "crates/spt-daemon/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7127268Z "line": 636 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7127360Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7127458Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7127592Z "path": "crates/spt-daemon/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7127703Z "line": 740 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7127801Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7127907Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7128042Z "path": "crates/spt-daemon/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7128149Z "line": 772 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7128258Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7128359Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7128500Z "path": "crates/spt-daemon/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7128605Z "line": 840 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7128710Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7128805Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7129025Z "path": "crates/spt-daemon/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7129133Z "line": 898 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7129239Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7129339Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7129462Z "path": "crates/spt-daemon/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7129577Z "line": 1173 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7129668Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7129758Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7129907Z "path": "crates/spt-daemon/src/notifsync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7130016Z "line": 157 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7130116Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7130217Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7130368Z "path": "crates/spt-daemon/src/notifsync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7130483Z "line": 250 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7130585Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7130688Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7130825Z "path": "crates/spt-daemon/src/notifsync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7130944Z "line": 273 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7131047Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7131152Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7131301Z "path": "crates/spt-daemon/src/psyrelay.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7131409Z "line": 355 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7131515Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7131610Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7131757Z "path": "crates/spt-daemon/src/psyrelay.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7131863Z "line": 392 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7131968Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7132072Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7132220Z "path": "crates/spt-daemon/tests/notifsync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7132430Z "line": 131 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7132535Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7132640Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7132784Z "path": "crates/spt-net/src/net/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7132892Z "line": 72 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7132988Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7133255Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7133399Z "path": "crates/spt-net/src/net/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7133499Z "line": 97 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7133598Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7133707Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7133832Z "path": "crates/spt-store/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7133945Z "line": 379 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7134045Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7134147Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7134283Z "path": "crates/spt-store/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7134390Z "line": 417 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7134494Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7134594Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7134728Z "path": "crates/spt-store/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7134832Z "line": 433 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7134936Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7135038Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7135170Z "path": "crates/spt-store/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7135280Z "line": 472 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7135372Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7135476Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7135610Z "path": "crates/spt-store/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7135716Z "line": 489 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7135814Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7135923Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7136061Z "path": "crates/spt-store/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7136164Z "line": 517 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7136268Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7136360Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7136497Z "path": "crates/spt-store/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7136598Z "line": 548 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7136703Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7136808Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7136942Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7137051Z "line": 745 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7137150Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7137257Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7137356Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7137451Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7137556Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7137648Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7137762Z "id": "REQ-NOTIF-2", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7138047Z "title": "spt notify (agent-issued subnet notif) + notif_command manifest seam (harness + shell adapters)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7138157Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7138263Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7138366Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7138467Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7138568Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7138677Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7138776Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7138876Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7139064Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7139160Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7139256Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7139374Z "path": "CONTEXT.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7139474Z "line": 509 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7139575Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7139679Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7139804Z "path": "docs/MANIFEST.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7139913Z "line": 123 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7140017Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7140118Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7140224Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7140323Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7140433Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7140529Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7140633Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7140777Z "path": "crates/spt-daemon/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7140881Z "line": 287 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7141087Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7141192Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7141328Z "path": "crates/spt-daemon/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7141433Z "line": 301 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7141532Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7141641Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7141775Z "path": "crates/spt-daemon/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7141988Z "line": 326 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7142090Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7142199Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7142351Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7142456Z "line": 239 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7142566Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7142666Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7142814Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7142918Z "line": 95 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7143024Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7143129Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7143257Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7143359Z "line": 2225 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7143462Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7143567Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7143693Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7143800Z "line": 2274 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7143901Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7144003Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7144129Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7144238Z "line": 2353 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7144334Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7144435Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7144562Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7144668Z "line": 2392 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7144768Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7144862Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7144960Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7145068Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7145177Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7145288Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7145397Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7145545Z "path": "crates/spt-daemon/tests/twohost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7145660Z "line": 810 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7145750Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7145855Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7145999Z "path": "crates/spt-daemon/tests/twohost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7146112Z "line": 1345 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7146218Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7146318Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7146421Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7146526Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7146645Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7146748Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7146853Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7146997Z "path": "crates/spt-daemon/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7147095Z "line": 1022 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7147201Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7147301Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7147439Z "path": "crates/spt-daemon/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7147555Z "line": 1090 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7147659Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7147763Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7147888Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7147997Z "line": 8210 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7148102Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7148208Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7148336Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7148451Z "line": 8265 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7148551Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7148651Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7148761Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7148861Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7149047Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7149148Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7149265Z "id": "REQ-PAIR-1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7149393Z "title": "TOTP-seeded SPAKE2 pairing", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7149503Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7149610Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7149715Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7149920Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7150020Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7150126Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7150231Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7150344Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7150451Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7150545Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7150746Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7150845Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7150960Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7151056Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7151222Z "path": "crates/spt-net/src/net/pairing/spake.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7151328Z "line": 27 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7151423Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7151527Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7151676Z "path": "crates/spt-net/src/net/pairing/spake.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7151784Z "line": 88 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7151889Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7151988Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7152143Z "path": "crates/spt-net/src/net/pairing/spake.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7152257Z "line": 110 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7152359Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7152458Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7152616Z "path": "crates/spt-net/src/net/pairing/spake.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7152730Z "line": 153 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7152825Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7152931Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7153079Z "path": "crates/spt-net/src/net/pairing/spake.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7153188Z "line": 182 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7153289Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7153398Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7153555Z "path": "crates/spt-net/src/net/pairing/totp.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7153656Z "line": 29 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7153755Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7153855Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7154027Z "path": "crates/spt-net/src/net/pairing/transcript.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7154137Z "line": 31 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7154238Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7154337Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7154485Z "path": "crates/spt-net/src/net/pairing/wire.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7154591Z "line": 44 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7154689Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7154798Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7154947Z "path": "crates/spt-net/src/net/pairing/wire.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7155047Z "line": 171 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7155142Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7155233Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7155394Z "path": "crates/spt-net/src/net/pairing/wire.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7155500Z "line": 376 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7155600Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7155709Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7155796Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7155900Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7156010Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7156120Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7156225Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7156367Z "path": "crates/spt-daemon/tests/twohost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7156478Z "line": 645 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7156582Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7156682Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7156826Z "path": "crates/spt-daemon/tests/twohost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7156934Z "line": 887 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7157039Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7157139Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7157242Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7157346Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7157465Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7157575Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7157679Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7157824Z "path": "crates/spt-net/src/net/pairing/spake.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7157933Z "line": 236 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7158037Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7158129Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7158281Z "path": "crates/spt-net/src/net/pairing/spake.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7158448Z "line": 349 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7158557Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7158653Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7158801Z "path": "crates/spt-net/src/net/pairing/totp.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7158906Z "line": 194 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7159186Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7159292Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7159445Z "path": "crates/spt-net/src/net/pairing/totp.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7159554Z "line": 216 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7159655Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7159764Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7159901Z "path": "crates/spt-net/src/net/pairing/totp.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7159992Z "line": 230 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7160100Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7160198Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7160352Z "path": "crates/spt-net/src/net/pairing/totp.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7160457Z "line": 242 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7160561Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7160662Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7160809Z "path": "crates/spt-net/src/net/pairing/totp.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7160924Z "line": 256 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7161025Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7161129Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7161277Z "path": "crates/spt-net/src/net/pairing/totp.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7161377Z "line": 270 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7161481Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7161578Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7161720Z "path": "crates/spt-net/src/net/pairing/totp.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7161830Z "line": 277 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7161931Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7162035Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7162178Z "path": "crates/spt-net/src/net/pairing/totp.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7162289Z "line": 295 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7162392Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7162500Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7162644Z "path": "crates/spt-net/src/net/pairing/wire.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7162756Z "line": 968 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7162861Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7162962Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7163114Z "path": "crates/spt-net/src/net/pairing/wire.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7163229Z "line": 1051 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7163334Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7163438Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7163586Z "path": "crates/spt-net/src/net/pairing/wire.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7163700Z "line": 1121 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7163801Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7163906Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7164043Z "path": "crates/spt-net/src/net/pairing/wire.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7164149Z "line": 1182 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7164244Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7164348Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7164498Z "path": "crates/spt-net/src/net/pairing/wire.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7164610Z "line": 1238 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7164711Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7164818Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7164969Z "path": "crates/spt-net/src/net/pairing/wire.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7165080Z "line": 1457 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7165184Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7165287Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7165382Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7165478Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7165569Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7165677Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7165779Z "id": "REQ-PAIR-2", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7165950Z "title": "Local trust store with TOFU + warn-on-change", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7166070Z "requiredStages": [], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7166174Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7166283Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7166389Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7166494Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7166603Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7166818Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7166937Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7167048Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7167151Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7167252Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7167358Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7167466Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7167651Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7167755Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7167864Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7167968Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7168060Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7168164Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7168254Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7168355Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7168474Z "id": "REQ-PAIR-3", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7168651Z "title": "Fetch current pairing code from any paired node", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7168770Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7168869Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7169042Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7169141Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7169261Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7169370Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7169480Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7169586Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7169690Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7169799Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7169901Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7170019Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7170124Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7170254Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7170357Z "line": 3259 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7170442Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7170547Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7170674Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7170782Z "line": 3328 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7170893Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7170994Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7171116Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7171222Z "line": 3709 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7171327Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7171431Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7171556Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7171666Z "line": 4961 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7171760Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7171861Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7171965Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7172070Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7172176Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7172289Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7172395Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7172500Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7172614Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7172714Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7172820Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7172947Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7173051Z "line": 9964 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7173156Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7173255Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7173378Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7173489Z "line": 10179 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7173593Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7173693Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7173827Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7173936Z "line": 10838 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7174036Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7174142Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7174260Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7174376Z "line": 10857 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7174485Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7174580Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7174705Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7174804Z "line": 10881 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7174904Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7175010Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7175129Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7175233Z "line": 10900 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7175339Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7175448Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7175678Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7175782Z "line": 10913 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7175876Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7175981Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7176111Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7176305Z "line": 10922 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7176410Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7176500Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7176606Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7176701Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7176805Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7176901Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7177016Z "id": "REQ-PAIR-4", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7177158Z "title": "Subnet naming on first pairing", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7177269Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7177378Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7177478Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7177584Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7177683Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7177788Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7177903Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7178008Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7178111Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7178211Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7178325Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7178433Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7178533Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7178677Z "path": "crates/spt-store/src/subnet.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7178781Z "line": 174 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7178882Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7179034Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7179148Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7179249Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7182049Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7182164Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7182263Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7182368Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7182469Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7182588Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7182688Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7182864Z "path": "crates/spt-net/src/net/pairing/wire.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7182974Z "line": 1294 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7183080Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7183183Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7183279Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7183385Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7183479Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7183583Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7183693Z "id": "REQ-PAIR-5", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7184034Z "title": "Multi-subnet pairing: subnet-name discovery input, create-new-names-up-front, rendezvous-token hashing", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7184144Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7184248Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7184354Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7184454Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7184553Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7184654Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7184754Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7184863Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7184969Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7185068Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7185173Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7185275Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7185383Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7185488Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7185647Z "path": "crates/spt-net/src/net/pairing/meet.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7185750Z "line": 44 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7185860Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7185957Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7186113Z "path": "crates/spt-net/src/net/pairing/meet.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7186224Z "line": 96 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7186323Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7186431Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7186584Z "path": "crates/spt-net/src/net/pairing/meet.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7186699Z "line": 107 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7186798Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7186899Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7187051Z "path": "crates/spt-net/src/net/pairing/meet.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7187151Z "line": 124 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7187380Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7187485Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7187633Z "path": "crates/spt-net/src/net/pairing/meet.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7187742Z "line": 155 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7187843Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7188043Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7188192Z "path": "crates/spt-net/src/net/pairing/meet.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7188295Z "line": 195 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7188396Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7188497Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7188652Z "path": "crates/spt-net/src/net/pairing/meet.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7188757Z "line": 251 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7188866Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7189036Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7189199Z "path": "crates/spt-net/src/net/pairing/rendezvous.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7189308Z "line": 33 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7189437Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7189537Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7189718Z "path": "crates/spt-net/src/net/pairing/rendezvous.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7189823Z "line": 45 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7189923Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7190018Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7190176Z "path": "crates/spt-net/src/net/pairing/rendezvous.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7190271Z "line": 59 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7190376Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7190471Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7190619Z "path": "crates/spt-net/src/net/pairing/wire.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7190716Z "line": 376 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7190814Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7190915Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7191011Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7191115Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7191220Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7191335Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7191426Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7191571Z "path": "crates/spt-daemon/tests/twohost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7191682Z "line": 887 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7191780Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7191879Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7192023Z "path": "crates/spt-net/src/net/pairing/meet.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7192123Z "line": 342 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7192222Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7192324Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7192424Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7192523Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7192629Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7192733Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7192833Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7192982Z "path": "crates/spt-net/src/net/pairing/meet.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7193086Z "line": 293 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7193190Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7193292Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7193438Z "path": "crates/spt-net/src/net/pairing/meet.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7193534Z "line": 304 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7193644Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7193748Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7193907Z "path": "crates/spt-net/src/net/pairing/meet.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7194053Z "line": 406 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7194148Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7194258Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7194408Z "path": "crates/spt-net/src/net/pairing/rendezvous.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7194517Z "line": 72 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7194619Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7194728Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7194890Z "path": "crates/spt-net/src/net/pairing/rendezvous.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7194995Z "line": 82 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7195103Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7195191Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7195348Z "path": "crates/spt-net/src/net/pairing/rendezvous.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7195452Z "line": 100 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7195558Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7195752Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7195901Z "path": "crates/spt-net/src/net/pairing/rendezvous.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7196011Z "line": 110 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7196111Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7196211Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7196363Z "path": "crates/spt-net/src/net/pairing/rendezvous.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7196564Z "line": 125 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7196659Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7196760Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7196916Z "path": "crates/spt-net/src/net/pairing/wire.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7197024Z "line": 1044 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7197125Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7197231Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7197368Z "path": "crates/spt-net/src/net/pairing/wire.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7197464Z "line": 1110 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7197569Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7197673Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7197822Z "path": "crates/spt-net/src/net/pairing/wire.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7197931Z "line": 1357 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7198036Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7198136Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7198241Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7198345Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7198447Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7198546Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7198665Z "id": "REQ-PAIR-6", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7199043Z "title": "Elevation-gated per-subnet code fetch (UAC/root or elevated agent; else authenticator app)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7199156Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7199260Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7199374Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7199483Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7199587Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7199692Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7199797Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7199901Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7199997Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7200092Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7200197Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7200302Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7200407Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7200540Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7200646Z "line": 3328 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7200746Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7200850Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7200975Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7201074Z "line": 3709 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7201179Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7201281Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7201417Z "path": "crates/spt/src/elevation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7201527Z "line": 18 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7201624Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7201727Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7201847Z "path": "crates/spt/src/elevation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7201953Z "line": 49 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7202046Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7202150Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7202280Z "path": "crates/spt/src/elevation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7202387Z "line": 318 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7202491Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7202593Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7202697Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7202797Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7202912Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7203017Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7203112Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7203218Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7203327Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7203431Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7203537Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7203656Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7203765Z "line": 10935 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7203866Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7203965Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7204094Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7204195Z "line": 10952 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7204419Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7204515Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7204656Z "path": "crates/spt/src/elevation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7204756Z "line": 383 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7204860Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7204964Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7205193Z "path": "crates/spt/src/elevation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7205302Z "line": 392 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7205402Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7205493Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7205593Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7205688Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7205775Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7205879Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7205992Z "id": "REQ-PAIR-7", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7206179Z "title": "Subnet icon (inline image metadata, GUI-only consumer)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7206294Z "requiredStages": [], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7206390Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7206494Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7206604Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7206710Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7206809Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7206904Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7207015Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7207124Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7207224Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7207330Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7207439Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7207546Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7207637Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7207734Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7207843Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7207947Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7208048Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7208143Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7208247Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7208349Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7208468Z "id": "REQ-PAIR-8", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7210001Z "title": "NTP TOTP offset: the pairing ceremony queries NTP at ceremony time (both sides) and applies the derived offset to the TOTP calculation in-process only; system-clock fallback when NTP is unreachable (offline LAN pairing unaffected — NTP failure never blocks a pairing that succeeds today); never sets the OS clock; no background sync loop (M8 decision 18; field trigger: enlyzeam clock >1 min off exceeds the ±1 window)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7210142Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7210252Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7210358Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7210461Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7210566Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7210672Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7210776Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7210892Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7210986Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7211090Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7211206Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7211301Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7211400Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7211545Z "path": "crates/spt-daemon/src/pairhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7211659Z "line": 577 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7211763Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7211865Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7212025Z "path": "crates/spt-net/src/net/pairing/ntp.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7212117Z "line": 22 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7212227Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7212331Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7212480Z "path": "crates/spt-net/src/net/pairing/ntp.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7212588Z "line": 76 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7212692Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7212787Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7212938Z "path": "crates/spt-net/src/net/pairing/ntp.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7213047Z "line": 127 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7213143Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7213244Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7213343Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7213429Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7213549Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7213648Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7213858Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7213962Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7214073Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7214177Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7214277Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7214422Z "path": "crates/spt-net/src/net/pairing/ntp.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7214611Z "line": 183 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7214708Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7214798Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7214950Z "path": "crates/spt-net/src/net/pairing/ntp.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7215052Z "line": 195 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7215150Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7215254Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7215402Z "path": "crates/spt-net/src/net/pairing/ntp.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7215509Z "line": 211 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7215613Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7215715Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7215857Z "path": "crates/spt-net/src/net/pairing/ntp.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7215967Z "line": 227 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7216073Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7216176Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7216282Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7216382Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7216477Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7216577Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7216687Z "id": "REQ-PICKER-1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7220447Z "title": "The picker renders a FOUR-state endpoint status (extending the W2 online/offline duality): the list-item square AND a color-coded STATUS line at the top of the pick-existing right-side details both show — gray OFFLINE; green ONLINE (online + PTY-controllable spt-hosted, not controlled); amber 'ONLINE - HARNESS ONLY' (online but NOT broker-PTY-controllable = harness-hosted, no broker PTY seat — today mis-shows green); blue 'ONLINE + CONTROLLED' (online + driven_by.is_some()). Derived on EndpointRow from {offline | controllable | driven_by} with precedence offline→gray, else driven_by→blue, else !controllable→amber, else green (driven_by outranks harness-only; mutually exclusive in practice — a harness-only endpoint has no broker PTY to control). The controllable discriminator is a NEW InfoJson.controllable: Option (serde-default, N-1-safe), stamped at the establish seam — cmd_listen (harness-hosted relay, no broker PTY) → Some(false); cmd_bind live_agent (spt-hosted broker PTY) → Some(true); absent → not-controllable (amber) default (harness-hosted is the common mis-reported case; one bind self-corrects). Store-projection-only (no live daemon query — doyle ruling). (v0.10.0)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7220594Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7220697Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7220798Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7220894Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7220992Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7221098Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7221203Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7221317Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7221408Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7221518Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7221627Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7221733Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7221838Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7221984Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7222090Z "line": 248 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7222190Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7222294Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7222434Z "path": "crates/spt/src/picker/model.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7222537Z "line": 263 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7222638Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7222740Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7222838Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7222938Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7223045Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7223158Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7223248Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7223352Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7223461Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7223569Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7223775Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7223912Z "path": "crates/spt-store/src/info.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7224023Z "line": 476 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7224124Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7224227Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7224362Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7224566Z "line": 753 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7224667Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7224771Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7224914Z "path": "crates/spt/src/picker/model.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7225015Z "line": 886 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7225119Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7225210Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7225353Z "path": "crates/spt/src/picker/view.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7225458Z "line": 455 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7225559Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7225664Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7225762Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7225866Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7225972Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7226069Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7226173Z "id": "REQ-PICKER-2", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7228174Z "title": "The picker's project-history loader reads the git-backed context store, not the bare working tree: data.rs project_history_for enumerates an endpoint's projects via the BranchStore branch set (the context store keeps per-project context in git branches — contextstore::project_branch(project_id), checked out to projects/// only on-demand) instead of raw std::fs::read_dir over the empty working tree (which returned empty for ALL rows incl wall-a — the operator bug). Ordered newest→oldest by branch commit recency; degrades to empty (informational pane), never fails. (v0.10.0)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7228305Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7228406Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7228503Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7228601Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7228704Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7228806Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7228911Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7229106Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7229216Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7229315Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7229431Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7229531Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7229635Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7229784Z "path": "crates/spt-store/src/branchstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7229897Z "line": 183 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7229997Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7230094Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7230231Z "path": "crates/spt/src/picker/data.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7230336Z "line": 296 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7230442Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7230546Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7230646Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7230752Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7230855Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7230969Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7231074Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7231177Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7231286Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7231401Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7231496Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7231643Z "path": "crates/spt-store/src/branchstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7231773Z "line": 655 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7231886Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7231993Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7232088Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7232192Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7232298Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7232398Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7232512Z "id": "REQ-PICKER-3", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7235059Z "title": "A self-owned subnet row reconciles its status to the LIVE roster: a Subnet-category row whose endpoint_id overlaps a local (is_local) roster id is self-owned (this node hosts it), so its status square is OVERRIDDEN with the live roster status — the WAN registry snapshot (wansend::load_snapshots) is a periodically-advertised, independently-stale projection, while the local roster (p.alive) is ground truth for an endpoint this node hosts. One status square per endpoint (CONTEXT.md:348-350 — nothing licenses opposite squares for one endpoint across its Local vs Subnet listings). A reconcile pass in data.rs after the local_rows + subnet_rows gather; BOTH category listings are preserved (Local + Subnet are legitimately distinct views — you are in your own subnet), only the STATUS is unified. (v0.10.0)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7235383Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7235494Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7235594Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7235698Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7235809Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7235904Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7236023Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7236134Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7236243Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7236351Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7236460Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7236578Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7236672Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7236811Z "path": "crates/spt/src/picker/data.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7236907Z "line": 124 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7237015Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7237121Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7237226Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7237330Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7237441Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7237550Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7237649Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7237760Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7237879Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7237984Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7238085Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7238223Z "path": "crates/spt/src/picker/data.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7238322Z "line": 369 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7238428Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7238531Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7238637Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7238734Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7238836Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7238923Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7239128Z "id": "REQ-PICKER-4", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7241096Z "title": "The picker's Subnet category renders the canonical node LABEL, not bare key-hex: a subnet row's node renders as 'LABEL (keyprefix…)' (e.g. 'HFENDULEAM (bcead52b…)') per CONTEXT.md:650 + Instance.node_label, NOT the raw node key-hex (SPT_DEV:14efb80cb… — a picker-only regression because resource_projection→ResourceRow drops node_label, so data.rs subnet_rows uses the raw row.node). Thread node_label into the picker subnet path (ResourceRow gains node_label, or subnet_rows looks it up via the registry's node_labels) and REUSE the one canonical render (format!(\"{l} ({}…)\", key_prefix) — cli.rs / wansend.rs), never a re-implementation. (v0.10.0)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7241201Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7241307Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7241415Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7241524Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7241629Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7241732Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7241846Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7241947Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7242047Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7242151Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7242266Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7242376Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7242470Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7242620Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7242728Z "line": 353 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7242834Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7242939Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7243081Z "path": "crates/spt/src/picker/data.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7243192Z "line": 105 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7243286Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7243391Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7243492Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7243592Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7243812Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7243930Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7244035Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7244141Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7244250Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7244353Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7244548Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7244703Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7244818Z "line": 1246 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7244919Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7245013Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7245158Z "path": "crates/spt/src/picker/data.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7245272Z "line": 427 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7245361Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7245458Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7245563Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7245666Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7245763Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7245867Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7245981Z "id": "REQ-PICKER-5", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7249197Z "title": "`spt endpoint list` (bare/subnet view) renders an ALIGNED table with canonical node labels: cmd_endpoint_list prints subnet rows with `\\t` TAB separators (cli.rs:~1651-1662) so variable-width endpoint_ids snap fields to different tab-stops → a RAGGED status column (operator screenshot: X/help statuses misaligned vs rt-*/sptc-*/wall-a); and it calls the node renderer with no label → bare key-hex for every row (SAME ResourceRow-drops-node_label root as REQ-PICKER-4). FIX: max-width per-column padding (mirror render_node_rows' pad, pad by char count not byte len — '…' is multibyte) replacing the tabs, and render the node via the shared node_label_display now that ResourceRow carries node_label (REQ-PICKER-4). Extract a pure row-formatter seam so the alignment+label is unit-testable. ALSO: the bare list is the SUBNET view (a just-run LOCAL perch is invisible cross-subnet until the next advertise tick), so emit a `--local` hint line so a freshly-run endpoint isn't perceived as lost. (v0.10.0; operator-flagged + doyle dispatch 2026-06-17)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7249332Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7249435Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7249541Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7249647Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7249749Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7249848Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7249964Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7250068Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7250178Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7250270Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7250388Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7250512Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7250622Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7250745Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7250856Z "line": 1802 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7250965Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7251065Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7251166Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7251266Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7251380Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7251481Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7251585Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7251694Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7251805Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7251910Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7252009Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7252146Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7252250Z "line": 7526 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7252359Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7252464Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7252565Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7252669Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7252773Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7252875Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7253012Z "id": "REQ-PICKER-ADAPTER-DESCRIPTION", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7254443Z "title": "The Create-new adapter-CHOICE screen of `spt endpoint run`'s picker shows a right-hand Description panel (like the Pick-existing endpoint picker's two-pane) surfacing per-adapter detail: install date, last-updated, adapter TYPE / the endpoint types it hosts, and the adapter description — so the user can see WHAT each adapter is before choosing it (today the selector lists bare names). DEFERRED fast-follow to v0.12.0 (operator 2026-06-18). (post-v0.12.0)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7254663Z "requiredStages": [], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7254768Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7254970Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7255080Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7255193Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7255297Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7255403Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7255507Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7255612Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7255718Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7255822Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7255931Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7256047Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7256147Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7256256Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7256371Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7256485Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7256590Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7256681Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7256780Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7256876Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7257010Z "id": "REQ-PICKER-HISTORY-FRESH", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7258174Z "title": "The `spt endpoint run` picker shows project history for FRESH endpoints (operator-raised v0.12.0 real-harness finding). Symptom: a fresh endpoint shows no project history in the picker. ROOT TBD — investigate the project-history loader (v0.10.0 PICKER-2, picker/data.rs) before fixing: distinguish a real loader bug from 'fresh = no history yet' semantics. (v0.12.1)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7258299Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7258408Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7258508Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7258609Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7258714Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7258827Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7258928Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7259118Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7259224Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7259328Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7259443Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7259548Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7259652Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7259796Z "path": "crates/spt/src/picker/data.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7259906Z "line": 275 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7260000Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7260101Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7260212Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7260314Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7260428Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7260534Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7260638Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7260738Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7260849Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7260967Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7261067Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7261215Z "path": "crates/spt/src/picker/data.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7261329Z "line": 400 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7261430Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7261535Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7261639Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7261745Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7261845Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7261944Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7262079Z "id": "REQ-PICKER-ONLINE-ACTION", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7263668Z "title": "The `spt endpoint run` picker shows the correct action for an ALREADY-ONLINE endpoint — Attach, NOT 'Start now' (operator-raised v0.12.0 real-harness finding). Symptom: the picker offers 'Start now' for endpoints that are already online. ROOT TBD — investigate the status→action mapping (v0.10.0 PICKER-1 four-state status, picker/model.rs): is it reading live/online state correctly, or rendering stale/wedged broker state (i.e. partly a symptom of the broker wedge / status=online latch)? Fix so online → Attach. (v0.12.1)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7263787Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7263887Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7264107Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7264201Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7264307Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7264406Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7264516Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7264637Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7264831Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7264942Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7265050Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7265160Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7265266Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7265403Z "path": "crates/spt/src/picker/model.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7265516Z "line": 654 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7265612Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7265715Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7265814Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7265925Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7266044Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7266152Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7266254Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7266359Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7266472Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7266578Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7266683Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7266831Z "path": "crates/spt/src/picker/model.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7266936Z "line": 1078 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7267050Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7267135Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7267284Z "path": "crates/spt/src/picker/model.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7267388Z "line": 1092 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7267499Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7267608Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7267708Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7267814Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7267909Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7268007Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7268126Z "id": "REQ-PICKER-UX-V013", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7269855Z "title": "`spt endpoint run` picker UX (v0.13.0 operator dogfooding): (1) SKIP the first screen — open directly on 'Pick existing'; `n` jumps to 'Create new'. (2) AUTO-ATTACH after both Start-new AND Resume-from-history (both currently don't attach and show no stdout); add an `h` shortcut to run headless (no attach). (3) 'controlled by' shows the node NAME (node_label_display), not the raw hex. (4) Clean up Start-new output — drop the Rust `pid=Some(142748)` leak and the 'harness binds its perch on startup' internals; user-friendly, not a process log. (v0.13.0)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7269983Z "requiredStages": [], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7270089Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7270198Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7270312Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7270409Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7270513Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7270617Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7270733Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7270837Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7270941Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7271051Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7271157Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7271270Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7271370Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7271476Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7271579Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7271690Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7271785Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7271884Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7271991Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7272086Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7272199Z "id": "REQ-PRES-1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7273603Z "title": "Presence resolution: the presence datum (last_active_node, last_active_endpoint, ts) gossiped subnet-wide via the agent-interaction heartbeat (rides registry distribution, visibility-gated) + one first-class most-recently-active resolution API consumed by notif first-fire, update-consent delivery, consent escalation, and shell wake resolution (M5 scope decision 1: resolution only — the PresenceChannel endpoint stays deferred)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7273723Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7273827Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7274038Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7274142Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7274243Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7274352Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7274456Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7274562Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7274671Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7274887Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7275015Z "path": "docs/DEFERRED.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7275119Z "line": 11 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7275221Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7275319Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7275420Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7275531Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7275638Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7275754Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7275855Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7276015Z "path": "crates/spt-daemon/src/dispatch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7276129Z "line": 515 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7276224Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7276337Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7276475Z "path": "crates/spt-daemon/src/dispatch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7276585Z "line": 567 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7276680Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7279724Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7279909Z "path": "crates/spt-daemon/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7280024Z "line": 188 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7280124Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7280219Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7280373Z "path": "crates/spt-daemon/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7280482Z "line": 214 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7280587Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7280697Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7280849Z "path": "crates/spt-daemon/src/presence.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7280955Z "line": 28 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7281049Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7281154Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7281303Z "path": "crates/spt-daemon/src/presence.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7281416Z "line": 105 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7281520Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7281611Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7281754Z "path": "crates/spt-daemon/src/presence.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7281863Z "line": 161 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7281974Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7282074Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7282212Z "path": "crates/spt-daemon/src/presence.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7282326Z "line": 180 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7282421Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7282526Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7282678Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7282783Z "line": 421 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7282885Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7282984Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7283156Z "path": "crates/spt-daemon/src/shellwake.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7283290Z "line": 289 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7283389Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7283490Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7283637Z "path": "crates/spt-daemon/src/shellwake.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7283751Z "line": 336 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7283846Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7283955Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7284100Z "path": "crates/spt-daemon/src/shellwake.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7284212Z "line": 362 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7284311Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7284415Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7284569Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7284673Z "line": 100 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7284784Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7284883Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7284983Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7285084Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7285203Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7285307Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7285408Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7285565Z "path": "crates/spt-daemon/tests/dispatch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7285800Z "line": 563 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7285908Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7286009Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7286162Z "path": "crates/spt-daemon/tests/twohost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7286271Z "line": 747 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7286585Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7286694Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7286836Z "path": "crates/spt-daemon/tests/twohost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7286949Z "line": 1165 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7287045Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7287146Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7287249Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7287350Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7287465Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7287574Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7287675Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7287817Z "path": "crates/spt-daemon/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7287926Z "line": 674 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7288037Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7288142Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7288295Z "path": "crates/spt-daemon/src/presence.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7288404Z "line": 238 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7288513Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7288609Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7288770Z "path": "crates/spt-daemon/src/presence.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7288876Z "line": 269 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7289062Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7289161Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7289304Z "path": "crates/spt-daemon/src/presence.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7289421Z "line": 305 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7289525Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7289631Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7289778Z "path": "crates/spt-daemon/src/presence.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7289883Z "line": 336 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7289984Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7290083Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7290251Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7290356Z "line": 1217 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7290455Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7290561Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7290708Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7290827Z "line": 1163 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7290928Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7291037Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7291137Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7291233Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7291328Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7291423Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7291539Z "id": "REQ-RC-1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7293625Z "title": "`spt rc ` — user CLI attaching a local terminal to a broker-held PTY, reusing the cross-node attach machinery (attach.rs request_attach → send_attach_input pump, spt-net AttachRecord codec); local attach is the degenerate single-node case of the cross-node path (rides REQ-TERM-3 byte-stream streaming). Read-only `--view` (watch, no stdin forwarded). Clean detach that does NOT terminate the broker-held session (KNOWN-HAZARDS: PTY ownership stays with the broker; no termination on detach). Explicit detach keybind that cannot collide with harness passthrough input (legacy capsule used a ctrl-b prefix); documented. ConPTY DSR auto-answer in the attach reader (hazard 5.5).", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7293755Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7293864Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7293968Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7294070Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7294178Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7294277Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7294368Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7294482Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7294590Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7294690Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7294795Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7294913Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7295019Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7295124Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7295373Z "path": "crates/spt-daemon/src/brain.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7295482Z "line": 944 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7295581Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7295682Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7295835Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7296040Z "line": 2060 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7296140Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7296230Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7296384Z "path": "crates/spt-daemon/src/nethost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7296483Z "line": 1017 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7296583Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7296689Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7296826Z "path": "crates/spt-daemon/src/nethost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7296937Z "line": 1051 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7297032Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7297135Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7297259Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7297368Z "line": 22 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7297466Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7297552Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7297682Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7297781Z "line": 701 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7297886Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7297991Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7298091Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7298201Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7298311Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7298420Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7298520Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7298668Z "path": "crates/spt-daemon/tests/attach.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7298768Z "line": 258 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7298869Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7299063Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7299208Z "path": "crates/spt-daemon/tests/attach.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7299316Z "line": 285 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7299407Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7299513Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7299654Z "path": "crates/spt-daemon/tests/attach.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7299763Z "line": 413 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7299869Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7299967Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7300071Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7300172Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7300296Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7300395Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7300497Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7300639Z "path": "crates/spt-daemon/src/nethost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7300743Z "line": 1415 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7300844Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7300944Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7301073Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7301169Z "line": 1133 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7301268Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7301373Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7301488Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7301602Z "line": 1162 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7301702Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7301808Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7301931Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7302037Z "line": 1175 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7302137Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7302241Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7302337Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7302433Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7302531Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7302621Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7302755Z "id": "REQ-RC-KEY-VT-TRANSLATE", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7308600Z "title": "On Windows, `spt rc` translates CONSOLE KEY EVENTS to standard xterm VT so ALL keys reach the hosted harness — arrows/Home/End/PgUp/PgDn/Insert/Delete/F-keys, every modifier combo, Backspace/Ctrl+Backspace — not just the byte-emitting ones. ROOT (operator HITL, doyle /diagnose): `spt rc` reads raw STDIN BYTES (spawn_stdin_reader, std::io::stdin().read); on the Windows LEGACY console (no ENABLE_VIRTUAL_TERMINAL_INPUT) the special keys produce console KEY_EVENTs, NOT stdin bytes, so the byte-pump sees nothing → those keys are DEAD. Enabling ENABLE_VIRTUAL_TERMINAL_INPUT was rejected (W7 dc07c39): on Windows Terminal it yields harness-specific win32-input-mode + broke ctrl-b detach. FIX (agnostic, full fidelity): on Windows, replace the stdin byte-read with a crossterm EVENT source (crossterm 0.28 already a dep; the picker already reads events) and translate each KeyEvent → STANDARD xterm VT bytes via a PURE translate_key_event(KeyEvent)->Vec (copy a known-correct xterm table verbatim, ADR-0001 spirit), forwarded through the SAME rc pump — the harness receives ordinary xterm VT (harness-AGNOSTIC, no win32-input-mode). Press-only (drop Repeat/Release). Detach stays the ctrl-b+'d' PREFIX, event-sourced (doyle Option B): Ctrl+B arms; armed+plain-'d'⇒Detach; armed+Ctrl+B⇒emit literal 0x02; armed+other⇒0x02 then translate(other). Non-tty stdin (piped/tests) → FALL BACK to the byte-read path (keeps e2e byte-injection working). UNIX UNCHANGED (its raw-mode byte stream already delivers proper VT; cfg-split, zero Unix regression). SUPERSEDES the W7 normalize_key_byte swap on Windows — the translator emits 0x7f for Backspace and 0x08 for Ctrl+Backspace natively (REQ-HAZARD-RC-INPUT-KEY-ENCODING folded in). NO int (a live interactive console can't be driven in CI — HITL, REQ-RUN-PICKER/RC-1 precedent); the exhaustive non-vacuous translate_key_event mapping unit + the event-detach unit ARE the surface. (v0.13.0)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7309052Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7309153Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7309267Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7309367Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7309473Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7309576Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7309681Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7309797Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7309900Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7310006Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7310126Z "path": "CONTEXT.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7310248Z "line": 345 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7310352Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7310448Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7310593Z "path": "docs/KNOWN-HAZARDS.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7310698Z "line": 440 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7310799Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7310903Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7311008Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7311114Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7311227Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7311338Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7311437Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7311566Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7311672Z "line": 226 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7311776Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7311871Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7312001Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7312114Z "line": 285 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7312214Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7312316Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7312443Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7312549Z "line": 300 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7312650Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7312743Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7312858Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7312969Z "line": 315 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7313068Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7313167Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7313301Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7313411Z "line": 364 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7313515Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7313611Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7313711Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7313816Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7313922Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7314026Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7314130Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7314241Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7314350Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7314454Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7314684Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7314807Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7314913Z "line": 1190 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7315017Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7315122Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7315247Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7315441Z "line": 1305 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7315546Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7315644Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7315748Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7315849Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7315959Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7316062Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7316187Z "id": "REQ-RC-MOUSE-FORWARD", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7320657Z "title": "On Windows, `spt rc` must FORWARD scroll-wheel events to the harness when the harness has mouse reporting on. ROOT (operator HITL): P1's RawGuard EnableMouseCapture (added for right-click paste, REQ-RC-WIN-PASTE) makes Windows Terminal forward ALL mouse — including the scroll wheel — to rc instead of scrolling its own buffer, but the rc mouse handler dropped everything except right-button-down → scroll DIED (and WT's native scrollback is stolen by the capture). Operator ruling: keep mouse capture + right-click bracketed paste AND forward scroll to the harness. FIX (doyle design, cfg(windows), folds into the rc mouse handler): TRACK the harness's mouse-reporting mode by scanning its OUTPUT stream for the DECSET set/reset — ESC[?1000h/1002h/1003h (mouse on) + ESC[?1006h (SGR ext) and their ...l (off) — into a shared MouseMode{enabled,sgr} (pump writes from output, stdin reader reads); the scan survives a sequence SPLIT across output chunks (a bounded carry buffer). The mouse handler: right-button-DOWN -> bracketed clipboard paste (unchanged, REQ-RC-WIN-PASTE); ScrollUp/Down -> translate to an xterm SGR mouse report (ESC[<64;col+1;row+1M up / ESC[<65;..M down, 0-based crossterm -> 1-based xterm) and forward ONLY when enabled && sgr (else DROP — a legacy X10 report the harness may not parse is garbage); Moved/drag/left/middle -> DROP (scroll is the operator's need; click-forward risks garbage, no click-to-position). Unix UNCHANGED (no capture; the terminal scrolls natively). (v0.13.0)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7320789Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7320893Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7321003Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7321106Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7321206Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7321311Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7321407Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7321516Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7321622Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7321722Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7321859Z "path": "docs/KNOWN-HAZARDS.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7321951Z "line": 461 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7322055Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7322154Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7322256Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7322360Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7322469Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7322585Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7322684Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7322813Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7322914Z "line": 421 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7323008Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7323113Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7323239Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7323346Z "line": 437 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7323443Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7323549Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7323633Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7323742Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7323852Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7323957Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7324051Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7324157Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7324262Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7324366Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7324477Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7324605Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7324811Z "line": 1440 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7324915Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7325014Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7325145Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7325248Z "line": 1459 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7325445Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7325535Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7325663Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7325770Z "line": 1471 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7325863Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7325962Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7326087Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7326195Z "line": 1499 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7326298Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7326399Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7326490Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7326594Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7326694Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7326796Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7326909Z "id": "REQ-RC-WIN-PASTE", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7331799Z "title": "In an `spt rc` session neither ctrl+V nor right-click pastes (CC explicitly supports ctrl+V). ROOT (doyle /diagnose): RawGuard does only enable_raw_mode (no bracketed paste / no mouse capture / no clipboard interception); the Windows console delivers a paste as synthetic per-char KEY EVENTs (no crossterm Event::Paste), and ctrl+V translates to bare ^V forwarded to CC — but CC runs DAEMON-SIDE with NO access to the operator's LOCAL clipboard, so remote paste is fundamentally CLIENT-ORIGINATED. A multi-line paste-as-keys also becomes a \\r submit-storm. FIX (doyle design, V0.13.0-P1-RC-PASTE-DESIGN.md, cfg(windows), folds into the bug-2 event path): on a paste gesture rc reads the LOCAL clipboard + forwards a BRACKETED PASTE (ESC[200~ + content + ESC[201~); CC has bracketed-paste mode on (its TUI sets ESC[?2004h) so it treats it as a paste — content intact, no submit-storm, harness-AGNOSTIC. ctrl+V: intercept Char('v')+CONTROL in the event loop -> read_clipboard -> bracketed paste. Right-click: RawGuard also EnableMouseCapture (disables console QuickEdit + enables ENABLE_MOUSE_INPUT so right-click surfaces as Event::Mouse on legacy cmd/powershell) -> right-button -> read_clipboard -> bracketed paste; DROP all other mouse (CC has no mouse features, operator-confirmed, so capture costs nothing). read_clipboard = clipboard-win crate (cfg(windows), minimal); empty/failed = clean no-op. Content forwarded VERBATIM (literal pasted text, no per-char translation). Unix UNCHANGED (its terminal pastes natively through the byte pump). DEPENDS ON P0 (a paste chunk must not wedge the broker). (v0.13.0)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7331929Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7332028Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7332128Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7332229Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7332333Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7332433Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7332544Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7332653Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7332758Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7332859Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7332991Z "path": "docs/KNOWN-HAZARDS.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7333097Z "line": 447 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7333192Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7333302Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7333402Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7333507Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7333621Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7333727Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7333827Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7333945Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7334052Z "line": 395 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7334151Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7334254Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7334378Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7334484Z "line": 411 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7334587Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7334683Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7334817Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7335022Z "line": 454 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7335132Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7335226Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7335351Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7335461Z "line": 468 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7335657Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7335756Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7335880Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7335996Z "line": 479 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7336090Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7336180Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7336281Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7336377Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7336480Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7336589Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7336690Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7336797Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7336906Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7337017Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7337121Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7337245Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7337356Z "line": 1381 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7337459Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7337560Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7337679Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7337798Z "line": 1402 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7337889Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7337994Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7338113Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7338223Z "line": 1423 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7338327Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7338428Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7338533Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7338633Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7338738Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7338834Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7339028Z "id": "REQ-RCVIEW-1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7343566Z "title": "Remote-attach controller/viewer model (CONTEXT.md:317): a session's broker OutputLog serves ONE interactive controller (input + EXCLUSIVE PTY resize; its viewport sets the size, sent on attach + every window change via crossterm Event::Resize) plus ANY NUMBER of read-only `--view` attachers (output-only, no input, no resize; client-side letterbox — center+pad when larger, clip+1-line indicator when smaller; only the local ctrl-b d detach chord). Attach intent is three-valued (`Viewer | Control | Take`, wire-default Control): Control to a FREE endpoint becomes controller, Control to a CONTROLLED endpoint is REFUSED with guidance (`--view`/`--take`) — never auto-viewer, never silent-displace. Wire adds (additive, N-1 skip-unknown): `Request.intent`, `Resize{rows,cols}` (controller-only), `Size{rows,cols}` (→viewer), `Displaced{by}` (→displaced controller). The brain-resume cursor (delivered_through, ADR-0018) tracks the CONTROLLER ONLY; viewers replay from their own from_seq and never move it. Dormancy keys on the controller ONLY: controller attach wakes / controller detach goes dormant (even with viewers present); viewer attach/detach is wake-neutral and may watch a dormant endpoint as-is. v1: viewing is gated identically to driving — a viewer runs the same access_check(Unsolicited) as a controller (watching reveals full session contents = a real disclosure); a lighter distinct watch-gate is deferred to cross-subnet/finer-consent (CONTEXT.md:317 'driving ≠ watching' = the future seam).", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7343710Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7343824Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7343928Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7344034Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7344138Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7344238Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7344344Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7344448Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7344558Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7344664Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7344763Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7344881Z "path": "CONTEXT.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7344996Z "line": 342 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7345210Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7345311Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7345416Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7345520Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7345631Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7345731Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7345839Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7346083Z "path": "crates/spt-daemon/src/attach.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7346187Z "line": 375 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7346298Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7346398Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7346541Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7346650Z "line": 622 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7346764Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7346875Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7347026Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7347144Z "line": 633 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7347245Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7347343Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7347491Z "path": "crates/spt-net/src/net/attach.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7347596Z "line": 41 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7347700Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7347805Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7347949Z "path": "crates/spt-net/src/net/attach.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7348053Z "line": 62 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7348154Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7348254Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7348406Z "path": "crates/spt-store/src/info.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7348507Z "line": 309 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7348612Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7348711Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7348841Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7349026Z "line": 701 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7349118Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7349207Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7349312Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7349418Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7349531Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7349636Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7349733Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7349874Z "path": "crates/spt-daemon/tests/attach.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7349987Z "line": 913 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7350093Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7350191Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7350343Z "path": "crates/spt-daemon/tests/attach.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7350449Z "line": 953 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7350558Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7350663Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7350806Z "path": "crates/spt-daemon/tests/attach.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7350915Z "line": 1000 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7351016Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7351116Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7351254Z "path": "crates/spt-daemon/tests/attach.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7351360Z "line": 1112 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7351464Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7351564Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7351675Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7351779Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7351903Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7352004Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7352108Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7352241Z "path": "crates/spt-net/src/net/attach.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7352352Z "line": 175 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7352460Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7352559Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7352693Z "path": "crates/spt-net/src/net/attach.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7352796Z "line": 195 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7352900Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7353006Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7353106Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7353210Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7353307Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7353416Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7353530Z "id": "REQ-REACH-1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7353702Z "title": "Off-node remote-drive detection + file transfer", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7353820Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7354036Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7354135Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7354242Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7354350Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7354455Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7354552Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7354670Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7354871Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7354975Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7355075Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7355176Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7355281Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7355388Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7355536Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7355647Z "line": 622 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7355751Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7355851Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7355999Z "path": "crates/spt-daemon/src/xfer.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7356094Z "line": 76 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7356205Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7356310Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7356442Z "path": "crates/spt-daemon/src/xfer.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7356553Z "line": 222 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7356648Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7356752Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7356877Z "path": "crates/spt-daemon/src/xfer.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7356986Z "line": 422 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7357087Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7357187Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7357329Z "path": "crates/spt-daemon/src/xfer.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7357435Z "line": 529 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7357544Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7357643Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7357781Z "path": "crates/spt-net/src/net/xfer.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7357889Z "line": 39 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7357993Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7358089Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7358218Z "path": "crates/spt-store/src/info.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7358327Z "line": 301 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7358423Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7358524Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7358651Z "path": "crates/spt-store/src/xfer.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7358753Z "line": 88 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7358862Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7359019Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7359162Z "path": "crates/spt-store/src/xfer.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7359266Z "line": 98 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7359377Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7359476Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7359605Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7359721Z "line": 233 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7359824Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7359920Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7360007Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7360106Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7360216Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7360327Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7360434Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7360581Z "path": "crates/spt-daemon/tests/dispatch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7360696Z "line": 415 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7360794Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7360898Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7361057Z "path": "crates/spt-daemon/tests/dispatch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7361161Z "line": 520 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7361266Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7361366Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7361514Z "path": "crates/spt-daemon/tests/twohost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7361620Z "line": 998 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7361724Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7361828Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7361977Z "path": "crates/spt-daemon/tests/twohost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7362091Z "line": 1383 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7362191Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7362301Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7362401Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7362607Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7362725Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7362821Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7362926Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7363063Z "path": "crates/spt-daemon/src/xfer.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7363167Z "line": 639 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7363366Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7363470Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7363610Z "path": "crates/spt-daemon/src/xfer.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7363718Z "line": 660 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7363828Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7363924Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7364070Z "path": "crates/spt-daemon/tests/attach.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7364172Z "line": 768 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7364272Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7364381Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7364520Z "path": "crates/spt-daemon/tests/xfer.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7364629Z "line": 93 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7364729Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7364835Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7364977Z "path": "crates/spt-daemon/tests/xfer.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7365082Z "line": 224 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7365187Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7365277Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7365422Z "path": "crates/spt-net/src/net/xfer.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7365530Z "line": 96 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7365635Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7365736Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7365864Z "path": "crates/spt-net/src/net/xfer.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7365972Z "line": 146 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7366073Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7366174Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7366306Z "path": "crates/spt-store/src/info.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7366412Z "line": 698 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7366517Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7366616Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7366755Z "path": "crates/spt-store/src/xfer.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7366865Z "line": 118 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7366969Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7367065Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7367203Z "path": "crates/spt-store/src/xfer.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7367313Z "line": 148 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7367423Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7367523Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7367657Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7367771Z "line": 928 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7367871Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7367971Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7368071Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7368174Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7368279Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7368375Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7368482Z "id": "REQ-REACH-2", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7368663Z "title": "Remote command execution (deferred, consent-gated)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7368773Z "requiredStages": [], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7368882Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7369054Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7369178Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7369274Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7369379Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7369483Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7369589Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7369708Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7369807Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7369913Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7370013Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7370117Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7370219Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7370328Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7370432Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7370539Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7370634Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7370733Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7370829Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7370930Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7371051Z "id": "REQ-READY-AGENT-RESUME", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7374593Z "title": "An offline ReadyAgent shows in `spt endpoint run`'s picker Resume-from-history and resumes correctly — closing the gap that today only LiveAgents do. ROOT: a harness-hosted ready bind (ReadyAgent::start_homed, ready.rs) writes info.json DIRECTLY and never appends the session ledger (unlike the shared establish_perch:250 live path), so a ready agent — though it has a session_id — produces ZERO ledger rows → the picker's offline+local Resume-from-history (which gates on ledger rows) never offers it. FIX (1): ledger the ready bind (ReadyAgent::start_homed → sessions::append Boot, mirroring establish_perch). FIX (2): `spt endpoint run --resume ` honors the adapter MANIFEST's endpoint TYPE — a ReadyAgent manifest (no [session.psyche_init]) resumes as a ready endpoint (poll listener, NO psyche-host); a LiveAgent (with psyche_init) as live. NO new bringup mode + NO picker changes (operator 2026-06-18): `spt endpoint run` is the spt-hosted ENDPOINT bringup for BOTH types, the type IS the adapter-manifest's concern (psyche-host already keys on psyche_init presence) — so (2) likely already holds; VERIFY at code, build only the residual. (v0.12.0)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7374898Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7374999Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7375094Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7375208Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7375308Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7375414Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7375518Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7375628Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7375743Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7375852Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7375948Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7376062Z "path": "CONTEXT.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7376176Z "line": 372 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7376273Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7376377Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7376481Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7376599Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7376739Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7376880Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7376986Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7377124Z "path": "crates/spt-msg/src/ready.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7377234Z "line": 110 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7377335Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7377439Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7377539Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7377630Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7377744Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7377848Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7377955Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7378126Z "path": "crates/spt/tests/ready_resume_ledger_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7378232Z "line": 26 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7381240Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7381384Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7381490Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7381592Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7381711Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7381821Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7381928Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7382086Z "path": "crates/spt-msg/src/ready.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7382192Z "line": 320 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7382295Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7382401Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7382501Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7382600Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7382706Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7382806Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7382915Z "id": "REQ-REL-1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7383341Z "title": "spt-releases publish-target repo: README public face, licensing split, Pages docs at the permanent lapse-proof canonical URL (ADR-0014)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7383454Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7383559Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7383665Z "impl" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7383765Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7383864Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7383971Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7384089Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7384202Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7384302Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7384696Z "path": "docs/adr/0014-publish-target-repo-and-lapse-proof-canonical-url.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7384800Z "line": 3 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7384895Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7384997Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7385096Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7385312Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7385430Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7385544Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7385641Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7385796Z "path": ".github/workflows/docs-publish.yml", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7385898Z "line": 11 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7385997Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7386097Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7386232Z "path": "crates/xtask/src/main.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7386345Z "line": 265 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7386436Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7386532Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7386636Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7386731Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7386843Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7386942Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7387050Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7387160Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7387265Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7387370Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7387479Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7387575Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7387684Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7387784Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7387895Z "id": "REQ-REL-2", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7388428Z "title": "Release asset set consumable by the self-updater: platform binaries, SHA256SUMS, SignedRelease metadata, manifest schema, mock-adapter zip; tag-triggered cross-repo pipeline", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7388533Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7388638Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7388743Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7388848Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7389029Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7389135Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7389248Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7389366Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7389466Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7389593Z "path": "docs/RELEASE-RUNBOOK.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7389697Z "line": 6 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7389803Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7389903Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7390007Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7390113Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7390218Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7390327Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7390428Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7390575Z "path": ".github/workflows/release.yml", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7390680Z "line": 16 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7390781Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7390876Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7391004Z "path": "crates/xtask/src/main.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7391100Z "line": 352 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7391200Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7391310Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7391429Z "path": "crates/xtask/src/main.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7391534Z "line": 426 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7391639Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7391740Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7391863Z "path": "crates/xtask/src/main.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7391968Z "line": 588 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7392073Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7392167Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7392295Z "path": "crates/xtask/src/main.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7392404Z "line": 720 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7392507Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7392608Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7392709Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7392818Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7392927Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7393038Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7393137Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7393295Z "path": "crates/spt/tests/release_verify_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7393508Z "line": 13 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7393596Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7393700Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7393799Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7393901Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7394015Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7394119Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7394311Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7394415Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7394521Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7394621Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7394738Z "id": "REQ-REL-3", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7395213Z "title": "Two-key release-signing trust anchor: primary + offline never-used recovery, both pubkeys embedded in the binary's trusted set, manual local signing (ADR-0015)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7395333Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7395437Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7395543Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7395643Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7395746Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7395857Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7395962Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7396071Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7396172Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7396266Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7396381Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7396487Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7396590Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7396743Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7396845Z "line": 237 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7396938Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7397039Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7397188Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7397287Z "line": 289 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7397393Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7397493Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7397620Z "path": "crates/xtask/src/main.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7397720Z "line": 329 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7397825Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7397930Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7398058Z "path": "crates/xtask/src/main.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7398159Z "line": 353 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7398253Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7398359Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7398483Z "path": "crates/xtask/src/main.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7398592Z "line": 394 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7398693Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7398793Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7398897Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7399056Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7399174Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7399274Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7399371Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7399479Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7399589Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7399700Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7399803Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7399945Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7400055Z "line": 1045 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7400158Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7400262Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7400402Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7400515Z "line": 1104 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7400615Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7400721Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7400825Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7400921Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7401026Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7401125Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7401245Z "id": "REQ-RUN-PICKER", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7406136Z "title": "Interactive `spt endpoint run` picker (ratatui TUI): bare `spt endpoint run` (no --adapter/--id) enters an in-process picker (flags-present = the REQ-HOST-RUN-1 non-interactive path, untouched). Layer 1 picks kind (Create new | Pick existing). Create-new: choose a registered kind=\"harness\" adapter with its shipped+local profiles tree-nested (registry::registered / manifest.profiles / local_profile_names) → enter a charset-validated id → start. Pick-existing: category select (left/right) over [ | Local node | Subnet], endpoints grouped + alphabetically sorted per category, a status square per endpoint (online green ■ / offline gray ▢ — the blue \"attached\" tri-state + Kick are DEFERRED to a broker attach-presence slice, M12-W2-RULING Q1), type-to-filter (`/`, nucleo-matcher), a pinned keybind legend, and a right-half two-pane description (harness adapter:profile · best-effort project history newest→oldest from the contextstore p- branches, empty-if-none · `spt endpoint description`). Confirm layer offers status-dependent options — Attach/Start/View (rc pump / cmd_endpoint_run) · Instantiate-locally (remote) · Change-harness-adapter (offline) · Fork (cmd_fork) · Resume-from-history (offline+LOCAL only; enumerate spt_store::sessions::last_k, titles ` @ (…id5)`, feed session_id → cmd_endpoint_run --resume). A single action enum is the source of truth so a future tap-mode (phone PTY) layers on without re-coupling to keybinds. EVERY terminal action routes through cmd_endpoint_run / existing CLI fns — no second bringup path.", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7406474Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7406574Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7406684Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7406789Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7406889Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7406998Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7407109Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7407218Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7407328Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7407428Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7407551Z "path": "CONTEXT.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7407658Z "line": 349 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7407762Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7407862Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7407953Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7408058Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7408170Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7408275Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7408376Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7408508Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7408609Z "line": 958 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7408695Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7408786Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7408909Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7409105Z "line": 968 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7409209Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7409321Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7409491Z "path": "crates/spt/src/picker/data.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7409592Z "line": 9 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7409696Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7409786Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7409926Z "path": "crates/spt/src/picker/data.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7410034Z "line": 67 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7410139Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7410226Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7410368Z "path": "crates/spt/src/picker/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7410482Z "line": 16 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7410587Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7410690Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7410817Z "path": "crates/spt/src/picker/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7410919Z "line": 254 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7411028Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7411127Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7411272Z "path": "crates/spt/src/picker/model.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7411371Z "line": 11 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7411476Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7411577Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7411719Z "path": "crates/spt/src/picker/model.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7411835Z "line": 115 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7411939Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7412034Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7412178Z "path": "crates/spt/src/picker/model.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7412282Z "line": 554 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7412382Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7412488Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7412625Z "path": "crates/spt/src/picker/model.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7412831Z "line": 635 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7412935Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7413035Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7413175Z "path": "crates/spt/src/picker/model.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7413283Z "line": 694 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7413482Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7413585Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7413714Z "path": "crates/spt/src/picker/model.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7413824Z "line": 747 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7413924Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7414028Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7414167Z "path": "crates/spt/src/picker/model.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7414276Z "line": 785 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7414382Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7414482Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7414629Z "path": "crates/spt/src/picker/view.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7414730Z "line": 8 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7414835Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7414934Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7415036Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7415144Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7415249Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7415365Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7415455Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7415564Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7415680Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7415788Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7415892Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7416016Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7416129Z "line": 7638 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7416228Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7416333Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7416462Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7416561Z "line": 7649 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7416658Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7416753Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7416891Z "path": "crates/spt/src/picker/model.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7416997Z "line": 879 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7417101Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7417205Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7417330Z "path": "crates/spt/src/picker/model.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7417430Z "line": 928 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7417530Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7417631Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7417764Z "path": "crates/spt/src/picker/model.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7417864Z "line": 979 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7417970Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7418068Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7418208Z "path": "crates/spt/src/picker/model.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7418317Z "line": 996 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7418417Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7418513Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7418656Z "path": "crates/spt/src/picker/model.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7418754Z "line": 1005 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7418854Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7419040Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7419169Z "path": "crates/spt/src/picker/model.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7419279Z "line": 1016 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7419378Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7419484Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7419613Z "path": "crates/spt/src/picker/model.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7419717Z "line": 1038 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7419818Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7419923Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7420060Z "path": "crates/spt/src/picker/model.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7420167Z "line": 1057 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7420265Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7420356Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7420486Z "path": "crates/spt/src/picker/model.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7420594Z "line": 1107 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7420699Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7420796Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7420928Z "path": "crates/spt/src/picker/model.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7421142Z "line": 1136 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7421250Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7421349Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7421493Z "path": "crates/spt/src/picker/model.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7421597Z "line": 1149 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7421692Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7421898Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7422031Z "path": "crates/spt/src/picker/model.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7422137Z "line": 1215 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7422232Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7422336Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7422470Z "path": "crates/spt/src/picker/model.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7422575Z "line": 1256 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7422685Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7422785Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7422913Z "path": "crates/spt/src/picker/model.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7423010Z "line": 1272 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7423109Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7423204Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7423344Z "path": "crates/spt/src/picker/view.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7423457Z "line": 491 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7423543Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7423649Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7423781Z "path": "crates/spt/src/picker/view.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7423881Z "line": 506 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7423985Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7424089Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7424226Z "path": "crates/spt/src/picker/view.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7424336Z "line": 524 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7424437Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7424527Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7424670Z "path": "crates/spt/src/picker/view.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7424775Z "line": 546 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7424874Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7424976Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7425104Z "path": "crates/spt/src/picker/view.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7425213Z "line": 556 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7425314Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7425414Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7425547Z "path": "crates/spt/src/picker/view.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7425648Z "line": 582 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7425742Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7425847Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7425953Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7426052Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7426143Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7426235Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7426353Z "id": "REQ-RUN-SHORTCUT", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7431212Z "title": "`-` launcher shortcut generation (picker `s` keybind, M12-W2-T2.4): from any pre-start options set the picker writes/updates a `-` launcher at the project root baking the current selection's non-interactive `spt endpoint run` flags (terminal actions only: adapter[:profile] + id + (create|resume) + (start|attach|view); Kick/Instantiate/Change-adapter/Fork are interactive-only, not bakeable). BASENAME IS A PARAMETER (operator rev. 2026-06-14): harness-agnostic spt-core defaults to `spt` (→ `spt-`); an adapter/flow OVERRIDES it (spt-claude-code → `cc`), so spt-core NEVER bakes `cc` (a harness name) into itself. The basename must be a DISTINCT token, never bare `spt` (a `spt.cmd` would shadow the real `spt.exe` only under cmd.exe cwd-first search, silently no-op in PowerShell/Unix, and self-recurse). The script is the CURRENT OS's native form — `.cmd` on Windows (NOT `.ps1`: default PATHEXT excludes `.ps1` so a bare/ext-less name never resolves one; `.cmd` is PATHEXT-resolvable), POSIX `sh` (+chmod +x) on Unix (a single portable form can't be both). The generated header documents the invocation reality (cmd.exe bare `` in the project dir / PowerShell `.\\` / Unix `./`; a truly-bare basename on PATH = a PATH-installed launcher, `/spt:setup`'s job). Overwrite is SENTINEL-guarded: the generator writes + checks a generated-by header marker — it overwrites its own prior output freely, but REFUSES + warns if a same-named file lacks the sentinel (never clobber a user file). Requires the additive `--create` flag on `Run{}` (the default-fresh made explicit; N-1-safe).", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7431456Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7431555Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7431755Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7431857Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7431957Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7432053Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7432153Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7432262Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7432373Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7432477Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7432601Z "path": "CONTEXT.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7432706Z "line": 390 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7432815Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7432911Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7433012Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7433116Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7433225Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7433341Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7433441Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7433589Z "path": "crates/spt/src/picker/shortcut.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7433702Z "line": 39 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7433798Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7433899Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7434050Z "path": "crates/spt/src/picker/shortcut.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7434156Z "line": 79 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7434252Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7434355Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7434488Z "path": "crates/spt/src/picker/shortcut.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7434598Z "line": 162 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7434705Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7434795Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7434901Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7435006Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7435134Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7435231Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7435340Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7435439Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7435555Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7435673Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7435773Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7435921Z "path": "crates/spt/src/picker/shortcut.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7436031Z "line": 206 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7436136Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7436246Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7436389Z "path": "crates/spt/src/picker/shortcut.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7436504Z "line": 222 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7436603Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7436708Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7436852Z "path": "crates/spt/src/picker/shortcut.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7436960Z "line": 238 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7437069Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7437169Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7437320Z "path": "crates/spt/src/picker/shortcut.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7437420Z "line": 251 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7437535Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7437634Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7437783Z "path": "crates/spt/src/picker/shortcut.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7437902Z "line": 258 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7438001Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7438098Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7438202Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7438302Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7438399Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7438502Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7438626Z "id": "REQ-SEAM-ACTIVITY", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7438836Z "title": "Activity/idle reported via api sentinels, not PTY quiescence", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7439028Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7439127Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7439232Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7439333Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7439442Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7439547Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7439662Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7439780Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7439979Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7440090Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7440194Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7440294Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7440400Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7440541Z "path": "crates/spt/src/api/delivery.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7440743Z "line": 18 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7440847Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7440948Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7441085Z "path": "crates/spt/src/api/delivery.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7441195Z "line": 35 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7441301Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7441405Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7441534Z "path": "crates/spt/src/api/delivery.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7441640Z "line": 72 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7441743Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7441849Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7441950Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7442058Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7442162Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7442272Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7442366Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7442479Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7442589Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7442699Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7442803Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7442943Z "path": "crates/spt/src/api/delivery.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7443056Z "line": 239 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7443156Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7443262Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7443390Z "path": "crates/spt/src/api/delivery.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7443496Z "line": 256 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7443600Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7443705Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7443849Z "path": "crates/spt/src/api/delivery.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7443952Z "line": 265 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7444062Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7444164Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7444263Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7444367Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7444464Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7444564Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7444677Z "id": "REQ-SEAM-CAPABILITY", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7444856Z "title": "Hostable endpoint-types capability declaration", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7444963Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7445072Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7445182Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7445280Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7445389Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7445490Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7445609Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7445718Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7445824Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7445937Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7446048Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7446162Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7446257Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7446406Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7446505Z "line": 598 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7446615Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7446721Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7446824Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7446934Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7447045Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7447158Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7447264Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7447365Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7447473Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7447581Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7447687Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7447832Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7447932Z "line": 967 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7448038Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7448138Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7448237Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7448339Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7448443Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7448547Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7448668Z "id": "REQ-SEAM-HISTORY", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7448876Z "title": "History subsystem (fetcher / locate-normalize / native store)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7449153Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7449249Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7449339Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7449449Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7449549Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7449654Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7449849Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7449965Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7450078Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7450179Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7450284Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7450392Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7450496Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7450602Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7450740Z "path": "crates/spt-live/src/echo.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7450844Z "line": 24 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7450951Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7451054Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7451189Z "path": "crates/spt-live/src/history.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7451303Z "line": 22 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7451407Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7451518Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7451623Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7451722Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7451838Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7451946Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7452046Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7452185Z "path": "crates/spt/tests/contract_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7452294Z "line": 260 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7452399Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7452500Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7452604Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7452699Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7452818Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7452926Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7453034Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7453174Z "path": "crates/spt-live/src/echo.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7453283Z "line": 171 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7453387Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7453489Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7453630Z "path": "crates/spt-live/src/echo.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7453736Z "line": 200 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7453846Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7453955Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7454080Z "path": "crates/spt-live/src/echo.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7454198Z "line": 220 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7454298Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7454404Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7454547Z "path": "crates/spt-live/src/history.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7454666Z "line": 199 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7454767Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7454860Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7454990Z "path": "crates/spt-live/src/history.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7455101Z "line": 219 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7455209Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7455310Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7455462Z "path": "crates/spt-live/src/history.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7455571Z "line": 244 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7455666Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7455765Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7455902Z "path": "crates/spt-live/src/history.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7456021Z "line": 276 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7456127Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7456231Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7456366Z "path": "crates/spt-live/src/history.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7456479Z "line": 297 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7456588Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7456680Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7456822Z "path": "crates/spt-live/src/history.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7456918Z "line": 324 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7457028Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7457137Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7457237Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7457343Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7457447Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7457552Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7457672Z "id": "REQ-SEAM-INJECT", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7457973Z "title": "inject-input methods configurable per activity-state", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7458090Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7458194Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7458304Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7458407Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7458593Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7458698Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7458806Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7458922Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7459098Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7459204Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7459303Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7459427Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7459523Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7459661Z "path": "crates/spt/src/api/delivery.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7459765Z "line": 19 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7459862Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7459971Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7460109Z "path": "crates/spt/src/api/delivery.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7460215Z "line": 111 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7460314Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7460419Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7460525Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7460633Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7460749Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7460854Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7460952Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7461051Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7461157Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7461267Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7461366Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7461506Z "path": "crates/spt/src/api/delivery.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7461605Z "line": 345 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7461715Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7461811Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7461948Z "path": "crates/spt/src/api/delivery.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7462053Z "line": 365 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7462149Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7462254Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7462349Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7462450Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7462549Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7462659Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7462788Z "id": "REQ-SEAM-POSTSPAWN", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7462940Z "title": "post-spawn / api bind seam with boot nonce", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7463061Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7463169Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7463273Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7463373Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7463477Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7463580Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7463695Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7463810Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7463909Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7464010Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7464120Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7464228Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7464335Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7464477Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7464592Z "line": 18 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7464692Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7464801Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7464930Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7465049Z "line": 431 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7465154Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7465255Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7465350Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7465455Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7465570Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7468437Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7468566Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7468674Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7468793Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7468897Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7469071Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7469226Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7469334Z "line": 881 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7469454Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7469705Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7469859Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7469963Z "line": 891 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7470059Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7470164Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7470263Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7470469Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7470564Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7470664Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7470784Z "id": "REQ-SEAM-PSYCHE", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7470960Z "title": "spawn-psyche seam (fresh + resume templates)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7471071Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7471174Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7471284Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7471381Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7471470Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7471579Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7471679Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7471799Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7471907Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7472013Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7472118Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7472232Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7472338Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7472442Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7472580Z "path": "crates/spt-live/src/psyche.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7472690Z "line": 19 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7472790Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7472894Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7473034Z "path": "crates/spt/src/api/live.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7473133Z "line": 12 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7473234Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7473339Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7473472Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7473582Z "line": 301 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7473696Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7473800Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7473904Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7474009Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7474126Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7474236Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7474337Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7474488Z "path": "crates/spt/tests/contract_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7474599Z "line": 259 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7474699Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7474788Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7474890Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7474999Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7475117Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7475224Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7475323Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7475471Z "path": "crates/spt-live/src/psyche.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7475577Z "line": 195 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7475672Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7475771Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7475915Z "path": "crates/spt-live/src/psyche.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7476029Z "line": 202 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7476125Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7476221Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7476358Z "path": "crates/spt-live/src/psyche.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7476469Z "line": 225 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7476573Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7476671Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7476806Z "path": "crates/spt-live/src/pulse.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7476913Z "line": 106 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7477026Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7477127Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7477261Z "path": "crates/spt-live/src/pulse.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7477360Z "line": 137 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7477462Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7477562Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7477684Z "path": "crates/spt-live/src/pulse.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7477786Z "line": 161 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7477886Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7477985Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7478086Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7478186Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7478290Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7478392Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7478591Z "id": "REQ-SEAM-RESUME", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7478802Z "title": "resume-session seam (fresh-with-preload / continue-existing)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7478915Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7479102Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7479200Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7479438Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7479546Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7479641Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7479751Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7479856Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7479961Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7480066Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7480184Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7480285Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7480386Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7480518Z "path": "crates/spt-live/src/resume.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7480615Z "line": 19 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7480719Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7480819Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7480919Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7481020Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7481139Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7481244Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7481349Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7481444Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7481569Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7481669Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7481768Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7481912Z "path": "crates/spt-live/src/resume.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7482012Z "line": 201 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7482110Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7482211Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7482345Z "path": "crates/spt-live/src/resume.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7482453Z "line": 223 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7482554Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7482659Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7482797Z "path": "crates/spt-live/src/resume.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7482898Z "line": 244 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7483008Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7483107Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7483208Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7483307Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7483412Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7483508Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7483636Z "id": "REQ-SEAM-SPAWN", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7483755Z "title": "spawn-session seam", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7483871Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7483979Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7484080Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7484186Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7484294Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7484393Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7484508Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7484606Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7484705Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7484811Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7484916Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7485025Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7485130Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7485278Z "path": "crates/spt-runtime/src/runtime.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7485387Z "line": 20 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7485498Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7485588Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7485692Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7485794Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7485903Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7486002Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7486108Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7486213Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7486326Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7486437Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7486541Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7486681Z "path": "crates/spt-runtime/src/runtime.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7486790Z "line": 608 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7486894Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7486995Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7487133Z "path": "crates/spt-runtime/src/runtime.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7487232Z "line": 615 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7487336Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7487540Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7487673Z "path": "crates/spt-runtime/src/runtime.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7487788Z "line": 721 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7487887Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7487988Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7488131Z "path": "crates/spt-runtime/src/runtime.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7488303Z "line": 727 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7488403Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7488502Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7488637Z "path": "crates/spt-runtime/src/runtime.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7488741Z "line": 752 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7488846Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7489037Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7489175Z "path": "crates/spt-runtime/src/runtime.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7489277Z "line": 789 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7489394Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7489494Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7489591Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7489691Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7489798Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7489894Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7490012Z "id": "REQ-SEAM-UPDATE", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7490206Z "title": "Adapter-update avenue (file-pull / delegated command)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7490312Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7490421Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7490525Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7490627Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7490731Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7490835Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7490951Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7491055Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7491150Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7491256Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7491366Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7491470Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7491566Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7491732Z "path": "crates/spt-daemon/src/adapter_update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7491838Z "line": 28 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7491942Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7492051Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7492201Z "path": "crates/spt-daemon/src/adapter_update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7492308Z "line": 88 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7492415Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7492515Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7492618Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7492723Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7492833Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7492938Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7493037Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7493143Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7493253Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7493357Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7493463Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7493614Z "path": "crates/spt-daemon/src/adapter_update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7493729Z "line": 326 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7493825Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7493929Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7494088Z "path": "crates/spt-daemon/src/adapter_update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7494196Z "line": 337 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7494301Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7494402Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7494501Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7494596Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7494693Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7494802Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7494901Z "id": "REQ-SEC-1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7495333Z "title": "Per-endpoint access whitelist: origin-node gate, stateful-firewall (reply/outbound exempt), node-now/user-later, outer gate before grants", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7495443Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7495542Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7495647Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7495743Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7495852Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7495947Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7496058Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7496166Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7496272Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7496491Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7496606Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7496720Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7496820Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7496974Z "path": "crates/spt-daemon/src/access.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7497078Z "line": 86 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7497274Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7497364Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7497507Z "path": "crates/spt-daemon/src/access.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7497613Z "line": 116 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7497716Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7497815Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7497954Z "path": "crates/spt-daemon/src/access.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7498066Z "line": 130 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7498161Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7498262Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7498405Z "path": "crates/spt-store/src/access.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7498509Z "line": 109 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7498610Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7498705Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7498844Z "path": "crates/spt-store/src/access.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7499034Z "line": 130 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7499129Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7499235Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7499373Z "path": "crates/spt-store/src/access.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7499492Z "line": 143 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7499593Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7499697Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7499832Z "path": "crates/spt-store/src/access.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7499931Z "line": 209 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7500031Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7500127Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7500260Z "path": "crates/spt-store/src/access.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7500368Z "line": 235 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7500473Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7500577Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7500699Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7500810Z "line": 5295 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7500911Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7501009Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7501100Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7501201Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7501310Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7501425Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7501525Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7501625Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7501740Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7501840Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7501944Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7502083Z "path": "crates/spt-daemon/src/access.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7502197Z "line": 142 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7502301Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7502398Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7502544Z "path": "crates/spt-daemon/src/access.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7502650Z "line": 194 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7502751Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7502855Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7502994Z "path": "crates/spt-daemon/src/access.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7503099Z "line": 235 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7503197Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7503302Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7503446Z "path": "crates/spt-daemon/tests/access.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7503554Z "line": 140 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7503655Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7503742Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7503883Z "path": "crates/spt-store/src/access.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7503989Z "line": 247 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7504089Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7504189Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7504328Z "path": "crates/spt-store/src/access.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7504427Z "line": 277 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7504527Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7504624Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7504761Z "path": "crates/spt-store/src/access.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7504977Z "line": 310 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7505076Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7505180Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7505306Z "path": "crates/spt-store/src/access.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7505409Z "line": 329 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7505599Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7505699Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7505840Z "path": "crates/spt-store/src/access.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7505945Z "line": 362 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7506055Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7506155Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7506289Z "path": "crates/spt-store/src/access.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7506389Z "line": 386 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7506493Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7506599Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7506727Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7506837Z "line": 8296 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7506942Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7507033Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7507137Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7507234Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7507333Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7507433Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7507558Z "id": "REQ-SEND-SPT-HOSTED", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7511423Z "title": "An inbound `spt send` is DELIVERED to an spt-hosted endpoint (brought up via `spt endpoint run` → `api bind`, broker holds its PTY, NO `api listen` relay). Today cmd_bind→establish_perch (api/startup.rs ~441) writes info.json + ready marker + controllable=Some(true) but registers NO message-listener / NO address, so deliver.rs resolve_address→None→spool (deliver.rs:132-140) and the message NEVER reaches the live PTY — the endpoint reads 'online' (ready marker) yet `spt send` silently SPOOLS ('online but not deliverable' lie). Per CONTEXT:187-188 the daemon owns the PTY and delivers, manifest-configurable per activity-state (direct PTY injection / relay / HTTP). FIX: route an inbound send for an spt-hosted target through the daemon → broker InputReq → session.write_input PTY-inject (broker.rs dispatch_input/write_input ~988-1022), the same path the brain uses; the live-delivery handshake must report Sent (not Queued) and stop the spool-only fallback for a broker-hosted, PTY-resident endpoint. Detection is local: controllable==Some(true) + spt-hosted state + resolve_address==None. = the spt-core HALF of the wall-b finding (perri owns the adapter half: bind-hook fired-zero-perch + the missing endpoint-run int test). (post-v0.10.0)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7511574Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7511670Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7511775Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7511870Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7511975Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7512080Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7512185Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7512305Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7512409Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7512514Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7512629Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7512748Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7512857Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7512954Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7513095Z "path": "crates/spt-daemon/src/brain.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7513205Z "line": 1066 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7513306Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7513410Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7513559Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7513669Z "line": 1857 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7513772Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7513876Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7514006Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7514119Z "line": 2850 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7514220Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7514325Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7514425Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7514525Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7514626Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7514730Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7514945Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7515101Z "path": "crates/spt-daemon/tests/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7515208Z "line": 189 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7515312Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7515411Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7515650Z "path": "crates/spt-daemon/tests/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7515760Z "line": 524 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7515866Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7515974Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7516074Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7516183Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7516296Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7516405Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7516501Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7516639Z "path": "crates/spt-daemon/src/msg.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7516743Z "line": 952 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7516845Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7516954Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7517087Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7517202Z "line": 7486 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7517301Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7517407Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7517512Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7517616Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7517721Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7517818Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7517959Z "id": "REQ-SESSION-RESUME-TEMPLATE", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7525027Z "title": "Resuming an endpoint session that HAS conversation history brings up a BLANK session. ROOT (doyle, code-grounded + CONTEXT — case-3 spt-core MISSING feature, NOT a perri docs-miss): CONTEXT L127-129 already defines the resume-session seam ('continue-existing: resume an existing harness session under the adapter — its NATIVE resume'), and the manifest already has the resume-variant pattern (Session has BOTH psyche_init AND psyche_resume, manifest.rs:217-219) — but the agent's own session has ONLY self_ (`[session.self]`, no resume sibling). cmd_endpoint_run (cli.rs:1304) re-passes the session_id through `[session.self]` on resume (resume.unwrap_or_else(mint_session_id)), so the adapter's FRESH command (e.g. `claude --session-id ..`) runs again instead of the harness NATIVE resume (`claude -r ..`) -> CC starts a fresh transcript -> blank. spt-core forwards session_id + cwd faithfully; it just has no way to express the native-resume invocation. SECOND GAP: CC resolves a transcript by session_id + cwd, but the session ledger records only {ts, session_id, trigger} (no cwd), so picker Resume-from-history (cross-project rows) can't restore the right cwd. FIX (doyle design, V0.13.0-P2-SESSION-RESUME-DESIGN.md, mirrors psyche_init->psyche_resume exactly): (A) add a `[session.resume]` role (resume: Option on Session + roles()/is_empty()); cmd_endpoint_run selects it when --resume is set AND it's declared (fill {id}/{session_id}=resumed id/{session_name} + the resume cwd), else FALL BACK to `[session.self]` (full back-compat). (B) record cwd PER ledger row (operator ruling): {ts, session_id, trigger, cwd} additive serde-default; resume cwd = resumed row cwd -> else perch info.cwd -> else current_dir (back-compat for old rows + single-project endpoints); picker threads the selected row's cwd through Outcome::Run -> cmd_endpoint_run. (C) public docs (MANIFEST + harness-contract) teach `[session.resume]` so perri builds the adapter side BLIND. Adapter follow-on (perri, AFTER spt-core ships+docs): declare `[session.resume] command = claude -r {session_id} --remote-control {id} --dangerously-skip-permissions` from the resume cwd. Completes REQ-READY-AGENT-RESUME / REQ-RUN-PICKER resume-from-history. (v0.13.0)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7525172Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7525272Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7525376Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7525477Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7525581Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7525681Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7525787Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7525895Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7526116Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7526234Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7526320Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7526501Z "path": "docs-site/src/harness-contract/manifest.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7526605Z "line": 130 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7526710Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7526927Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7527056Z "path": "docs/MANIFEST.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7527162Z "line": 96 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7527251Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7527361Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7527461Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7527570Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7527676Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7527781Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7527885Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7528044Z "path": "crates/spt-daemon/src/harnesshost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7528153Z "line": 77 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7528253Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7528358Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7528510Z "path": "crates/spt-daemon/src/harnesshost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7528621Z "line": 183 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7528725Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7528830Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7529068Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7529182Z "line": 222 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7529284Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7529383Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7529543Z "path": "crates/spt-store/src/sessions.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7529658Z "line": 71 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7529761Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7529860Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7530000Z "path": "crates/spt/src/picker/model.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7530108Z "line": 176 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7530209Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7530310Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7530418Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7530519Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7530643Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7530747Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7530848Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7531015Z "path": "crates/spt/tests/resume_template_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7531125Z "line": 25 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7531231Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7531329Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7531430Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7531536Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7531653Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7531759Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7531860Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7532011Z "path": "crates/spt-daemon/src/harnesshost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7532115Z "line": 341 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7532220Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7532323Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7532475Z "path": "crates/spt-daemon/src/harnesshost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7532586Z "line": 391 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7532685Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7532790Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7532934Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7533042Z "line": 1244 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7533153Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7533258Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7533406Z "path": "crates/spt-store/src/sessions.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7533510Z "line": 184 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7533615Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7533715Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7533863Z "path": "crates/spt-store/src/sessions.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7533968Z "line": 208 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7534069Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7534177Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7534316Z "path": "crates/spt-store/src/sessions.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7534427Z "line": 236 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7534530Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7534636Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7534779Z "path": "crates/spt/src/picker/model.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7534992Z "line": 945 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7535098Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7535197Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7535302Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7535403Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7535503Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7535699Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7535808Z "id": "REQ-SHELL-1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7536761Z "title": "Shell hosting machinery: shell perch under the owner (type/owner/adapter_name/status/alias), broker-launched binary + api bind local-link handshake, the three channels (command durable, text+file durable + progress-queryable, sensory REST-only never spooled + dropped-unless-owner-live), owner exclusivity (CONTEXT Shell model)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7536866Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7536977Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7537080Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7537180Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7537280Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7537379Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7537477Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7537588Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7537698Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7537801Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7537902Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7538012Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7538116Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7538222Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7538365Z "path": "crates/spt-daemon/src/linkhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7538474Z "line": 189 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7538580Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7538675Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7538823Z "path": "crates/spt-daemon/src/linkhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7538923Z "line": 268 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7539118Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7539214Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7539371Z "path": "crates/spt-daemon/src/shellchan.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7539481Z "line": 27 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7539586Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7539695Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7539839Z "path": "crates/spt-daemon/src/shellchan.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7539953Z "line": 52 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7540052Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7540152Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7540293Z "path": "crates/spt-daemon/src/shellchan.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7540402Z "line": 144 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7540502Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7540603Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7540745Z "path": "crates/spt-daemon/src/shellchan.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7540856Z "line": 176 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7540960Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7541069Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7541199Z "path": "crates/spt-daemon/src/shellhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7541312Z "line": 22 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7541413Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7541509Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7541656Z "path": "crates/spt-daemon/src/shellhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7541757Z "line": 65 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7541866Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7541961Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7542105Z "path": "crates/spt-daemon/src/shellhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7542209Z "line": 76 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7542319Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7542416Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7542566Z "path": "crates/spt-daemon/src/shellhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7542670Z "line": 151 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7542766Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7542869Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7543002Z "path": "crates/spt-daemon/src/shellhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7543108Z "line": 210 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7543212Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7543317Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7543465Z "path": "crates/spt-daemon/src/shellhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7543574Z "line": 259 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7543775Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7543879Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7544038Z "path": "crates/spt-daemon/src/shellhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7544142Z "line": 281 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7544247Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7544437Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7544590Z "path": "crates/spt-daemon/src/shellhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7544696Z "line": 294 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7544800Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7544900Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7545052Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7545162Z "line": 217 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7545263Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7545363Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7545509Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7545615Z "line": 233 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7545720Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7545814Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7545963Z "path": "crates/spt-store/src/shellinfo.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7546067Z "line": 41 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7546171Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7546273Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7546424Z "path": "crates/spt-store/src/shellinfo.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7546539Z "line": 222 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7546644Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7546753Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7546893Z "path": "crates/spt/src/api/delivery.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7547002Z "line": 173 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7547107Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7547203Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7547340Z "path": "crates/spt/src/api/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7547445Z "line": 354 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7547547Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7547655Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7547782Z "path": "crates/spt/src/api/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7547887Z "line": 419 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7547981Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7548090Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7548244Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7548353Z "line": 333 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7548452Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7548554Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7548681Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7548792Z "line": 6320 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7548897Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7549073Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7549197Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7549306Z "line": 6470 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7549406Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7549512Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7549635Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7549736Z "line": 6646 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7549836Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7549926Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7550032Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7550127Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7550245Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7550356Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7550457Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7550612Z "path": "crates/spt-daemon/tests/dispatch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7550731Z "line": 713 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7550839Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7550938Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7551092Z "path": "crates/spt-daemon/tests/shellchan.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7551201Z "line": 8 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7551305Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7551411Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7551562Z "path": "crates/spt-daemon/tests/shellchan.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7551674Z "line": 49 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7551778Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7551873Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7552021Z "path": "crates/spt-daemon/tests/twohost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7552130Z "line": 778 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7552336Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7552440Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7552593Z "path": "crates/spt-daemon/tests/twohost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7552704Z "line": 1213 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7552807Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7553000Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7553140Z "path": "crates/spt/tests/notify_shell_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7553245Z "line": 17 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7553345Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7553452Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7553582Z "path": "crates/spt/tests/shell_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7553692Z "line": 14 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7553791Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7553896Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7554001Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7554105Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7554226Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7554330Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7554439Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7554588Z "path": "crates/spt-daemon/src/shellchan.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7554697Z "line": 246 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7554802Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7557581Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7557778Z "path": "crates/spt-daemon/src/shellchan.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7557900Z "line": 279 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7558005Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7558107Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7558262Z "path": "crates/spt-daemon/src/shellchan.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7558371Z "line": 319 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7558466Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7558570Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7558722Z "path": "crates/spt-daemon/src/shellhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7558828Z "line": 599 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7558922Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7559114Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7559256Z "path": "crates/spt-daemon/src/shellhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7559362Z "line": 672 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7559457Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7559561Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7559700Z "path": "crates/spt-daemon/src/shellhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7559805Z "line": 816 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7559909Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7560015Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7560157Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7560262Z "line": 595 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7560358Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7560453Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7560597Z "path": "crates/spt-store/src/shellinfo.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7560702Z "line": 399 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7560805Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7560902Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7561031Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7561148Z "line": 8976 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7561248Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7561357Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7561474Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7561584Z "line": 9300 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7561681Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7561785Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7561914Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7562019Z "line": 9717 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7562123Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7562229Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7562334Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7562433Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7562533Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7562629Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7562753Z "id": "REQ-SHELL-2", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7564323Z "title": "Shell sleep/wake: link-break always closes the binary (pre-close instruction + termination timeout), ephemeral teardown vs persistent offline/relink, wake_command wake-watcher (offline-only, exit-opcode supervision, exponential backoff + give-up), state-keyed wake resolution (dormant/suspended/active-elsewhere; no-reachable refuses — spawn-anywhere branch deferred), spt shutdown owner cascade + api owner-shutdown gated by can_shutdown (CONTEXT Shell sleep/wake)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7564575Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7564684Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7564786Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7564999Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7565124Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7565243Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7565352Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7565463Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7565582Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7565682Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7565788Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7565895Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7566001Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7566103Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7566264Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7566375Z "line": 217 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7566479Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7566582Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7566735Z "path": "crates/spt-daemon/src/dispatch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7566840Z "line": 403 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7566949Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7567044Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7567192Z "path": "crates/spt-daemon/src/grants.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7567306Z "line": 250 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7567398Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7567498Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7567645Z "path": "crates/spt-daemon/src/lifecycle.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7567755Z "line": 403 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7567855Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7567955Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7568107Z "path": "crates/spt-daemon/src/linkhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7568208Z "line": 30 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7568304Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7568404Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7568551Z "path": "crates/spt-daemon/src/linkhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7568658Z "line": 409 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7568765Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7568864Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7569096Z "path": "crates/spt-daemon/src/linkhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7569200Z "line": 445 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7569302Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7569411Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7569554Z "path": "crates/spt-daemon/src/linkhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7569664Z "line": 660 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7569764Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7569863Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7570007Z "path": "crates/spt-daemon/src/resting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7570116Z "line": 348 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7570222Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7570322Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7570464Z "path": "crates/spt-daemon/src/shellchan.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7570566Z "line": 115 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7570670Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7570779Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7570919Z "path": "crates/spt-daemon/src/shellhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7571027Z "line": 120 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7571127Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7571229Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7571370Z "path": "crates/spt-daemon/src/shellhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7571467Z "line": 374 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7571572Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7571675Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7571817Z "path": "crates/spt-daemon/src/shellhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7571926Z "line": 500 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7572026Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7572125Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7572264Z "path": "crates/spt-daemon/src/shellwake.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7572373Z "line": 24 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7572469Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7572569Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7572716Z "path": "crates/spt-daemon/src/shellwake.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7572908Z "line": 76 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7573012Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7573113Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7573255Z "path": "crates/spt-daemon/src/shellwake.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7573355Z "line": 154 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7573551Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7573656Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7573795Z "path": "crates/spt-daemon/src/shellwake.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7573904Z "line": 177 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7574004Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7574110Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7574251Z "path": "crates/spt-daemon/src/shellwake.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7574355Z "line": 273 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7574461Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7574554Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7574702Z "path": "crates/spt-daemon/src/shellwake.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7574812Z "line": 456 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7574916Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7575021Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7575165Z "path": "crates/spt-daemon/src/shellwake.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7575264Z "line": 538 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7575365Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7575465Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7575617Z "path": "crates/spt-net/src/net/shelllink.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7575728Z "line": 27 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7575837Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7575937Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7576090Z "path": "crates/spt-net/src/net/shelllink.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7576194Z "line": 48 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7576300Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7576395Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7576537Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7576648Z "line": 517 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7576747Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7576847Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7576972Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7577081Z "line": 1921 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7577185Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7577290Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7577419Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7577518Z "line": 6334 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7577629Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7577725Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7577847Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7577954Z "line": 6395 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7578054Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7578148Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7578268Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7578372Z "line": 6423 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7578472Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7578578Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7578696Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7578801Z "line": 6477 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7578907Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7579082Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7579208Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7579316Z "line": 6732 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7579420Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7579520Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7579647Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7579761Z "line": 6792 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7579857Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7579953Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7580076Z "path": "crates/spt/src/wansend.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7580181Z "line": 298 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7580282Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7580381Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7580516Z "path": "crates/spt/src/wansend.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7580620Z "line": 339 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7580719Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7580821Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7580925Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7581029Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7581244Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7581354Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7581455Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7581611Z "path": "crates/spt-daemon/tests/dispatch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7581712Z "line": 706 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7581817Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7582002Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7582155Z "path": "crates/spt-daemon/tests/twohost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7582259Z "line": 778 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7582354Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7582459Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7582600Z "path": "crates/spt-daemon/tests/twohost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7582695Z "line": 1213 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7582801Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7582900Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7583054Z "path": "crates/spt/tests/shell_sleepwake_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7583158Z "line": 18 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7583253Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7583344Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7583449Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7583548Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7583654Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7583759Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7583863Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7584003Z "path": "crates/spt-daemon/src/linkhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7584111Z "line": 744 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7584216Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7584322Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7584454Z "path": "crates/spt-daemon/src/resting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7584559Z "line": 796 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7584661Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7584760Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7584901Z "path": "crates/spt-daemon/src/shellhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7585006Z "line": 705 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7585114Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7585214Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7585363Z "path": "crates/spt-daemon/src/shellhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7585472Z "line": 754 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7585571Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7585663Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7585810Z "path": "crates/spt-daemon/src/shellhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7585926Z "line": 778 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7586030Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7586129Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7586268Z "path": "crates/spt-daemon/src/shellwake.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7586377Z "line": 603 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7586472Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7586574Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7586716Z "path": "crates/spt-daemon/src/shellwake.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7586821Z "line": 624 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7586922Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7587026Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7587170Z "path": "crates/spt-daemon/src/shellwake.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7587270Z "line": 660 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7587374Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7587480Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7587622Z "path": "crates/spt-daemon/src/shellwake.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7587731Z "line": 714 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7587821Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7587927Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7588064Z "path": "crates/spt-daemon/src/shellwake.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7588174Z "line": 732 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7588280Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7588374Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7588514Z "path": "crates/spt-daemon/src/shellwake.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7588619Z "line": 766 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7588722Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7588823Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7589027Z "path": "crates/spt-daemon/src/shellwake.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7589143Z "line": 841 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7589242Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7589347Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7589849Z "path": "crates/spt-net/src/net/shelllink.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7589961Z "line": 85 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7590062Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7590161Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7590288Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7590388Z "line": 8044 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7590579Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7590674Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7590803Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7590902Z "line": 9054 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7591003Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7591104Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7591227Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7591338Z "line": 9124 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7591437Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7591537Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7591671Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7591776Z "line": 9162 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7591875Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7591977Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7592077Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7592172Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7592277Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7592382Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7592486Z "id": "REQ-SHELL-3", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7594342Z "title": "Drive channel (owner->shell, REST-only, never-spooled, latest-wins): the owner->shell mirror of sensory for continuous real-time control (scroll/crank/stick/avatar) — a [shell.drive] manifest vocab + EVENT_TYPE_DRIVE frame, delivered to the ONLINE binary only via a single live slot (a new frame supersedes an undelivered one — no spool, no queue, no replay on relink), dropped-with-diagnostic if the shell is offline; cross-node rides the ephemeral link (REST class), never the durable shell spool. Commands = discrete+durable; drive = continuous+ephemeral (CONTEXT:260, minted 2026-06-11 Gateway grill).", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7594466Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7594568Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7594681Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7594776Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7594868Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7594977Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7595086Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7595202Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7595310Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7595414Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7595524Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7595660Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7595764Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7595870Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7596022Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7596132Z "line": 229 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7596233Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7596327Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7596528Z "path": "crates/spt-daemon/src/drivehub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7596666Z "line": 36 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7596766Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7596876Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7597033Z "path": "crates/spt-daemon/src/drivehub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7597148Z "line": 137 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7597257Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7597357Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7597492Z "path": "crates/spt-daemon/src/drivehub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7597610Z "line": 153 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7597706Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7597811Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7597944Z "path": "crates/spt-daemon/src/drivehub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7598045Z "line": 165 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7598154Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7598258Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7598406Z "path": "crates/spt-daemon/src/drivehub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7598511Z "line": 242 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7598610Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7598711Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7598854Z "path": "crates/spt-daemon/src/drivehub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7599145Z "line": 267 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7599249Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7599345Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7599531Z "path": "crates/spt-daemon/src/drivehub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7599640Z "line": 293 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7599751Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7599960Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7600122Z "path": "crates/spt-daemon/src/endpoint.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7600231Z "line": 51 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7600333Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7600436Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7600583Z "path": "crates/spt-daemon/src/linkhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7600688Z "line": 333 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7600791Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7600886Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7601030Z "path": "crates/spt-daemon/src/linkhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7601129Z "line": 373 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7601239Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7601340Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7601486Z "path": "crates/spt-daemon/src/linkhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7601593Z "line": 602 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7601692Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7601801Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7601946Z "path": "crates/spt-daemon/src/shellchan.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7602055Z "line": 132 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7602159Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7602265Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7602417Z "path": "crates/spt-daemon/src/shellhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7602527Z "line": 448 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7602632Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7602732Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7602880Z "path": "crates/spt-proto/src/event.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7602989Z "line": 74 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7603094Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7603195Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7603336Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7603450Z "line": 605 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7603560Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7603668Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7603825Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7603955Z "line": 396 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7604058Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7604159Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7604284Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7604387Z "line": 6518 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7604498Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7604593Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7604692Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7604803Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7604917Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7605036Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7605142Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7605293Z "path": "crates/spt-daemon/tests/twohost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7605394Z "line": 1262 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7605500Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7605613Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7605747Z "path": "crates/spt/tests/drive_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7605856Z "line": 17 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7605960Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7606065Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7606169Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7606277Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7606401Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7606507Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7606611Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7606755Z "path": "crates/spt-daemon/src/drivehub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7606873Z "line": 311 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7606973Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7607079Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7607226Z "path": "crates/spt-daemon/src/drivehub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7607322Z "line": 325 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7607426Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7607517Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7607665Z "path": "crates/spt-daemon/src/drivehub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7607865Z "line": 343 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7608005Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7608113Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7608242Z "path": "crates/spt-daemon/src/drivehub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7608353Z "line": 364 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7608518Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7608615Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7608761Z "path": "crates/spt-daemon/src/drivehub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7608879Z "line": 376 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7609052Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7609151Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7609295Z "path": "crates/spt-daemon/src/linkhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7609405Z "line": 897 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7609508Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7609610Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7609762Z "path": "crates/spt-daemon/src/linkhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7609867Z "line": 957 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7609972Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7610067Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7610201Z "path": "crates/spt-daemon/src/shellchan.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7610316Z "line": 338 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7610415Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7610516Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7610649Z "path": "crates/spt/src/api/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7610763Z "line": 769 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7610859Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7610964Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7611096Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7611206Z "line": 8836 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7611309Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7611413Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7611509Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7611609Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7611708Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7611808Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7611924Z "id": "REQ-SHELL-4", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7613770Z "title": "Shell tunnel (reliable-ordered opaque byte stream): an owner<->shell link may hold a long-lived, reliable-ordered, link-bound QUIC stream pair carrying opaque wire protocol traffic the channel taxonomy must NOT reinterpret (first consumer usbip URB) — manifest opt-in, not enveloped, not MAC-framed, not spooled; the link lifecycle governs it (a link-break closes the tunnel). Reliable-ordered ⇒ congestion surfaces as lag never loss ⇒ acceptable only on-LAN: the on-LAN posture is documented and the tunnel is NOT proven cross-WAN (CONTEXT:262, minted 2026-06-11 Gateway grill; doyle gate C2).", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7613902Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7614006Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7614115Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7614223Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7614323Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7614423Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7614524Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7614633Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7614739Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7614849Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7614952Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7615073Z "path": "CONTEXT.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7615182Z "line": 281 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7615281Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7615382Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7615639Z "path": "docs/adr/0020-event-envelope-sole-arriving-format-reply-to-removed.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7615759Z "line": 88 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7615863Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7615964Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7616065Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7616168Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7616284Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7616389Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7616487Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7616639Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7616748Z "line": 243 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7616851Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7616947Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7617095Z "path": "crates/spt-daemon/src/endpoint.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7617306Z "line": 61 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7617415Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7617524Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7617667Z "path": "crates/spt-daemon/src/linkhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7617781Z "line": 218 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7617973Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7618077Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7618221Z "path": "crates/spt-daemon/src/linkhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7618325Z "line": 245 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7618434Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7618531Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7618678Z "path": "crates/spt-daemon/src/nethost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7618788Z "line": 616 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7618894Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7619093Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7619228Z "path": "crates/spt-daemon/src/nethost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7619349Z "line": 1191 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7619468Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7619569Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7619716Z "path": "crates/spt-daemon/src/nethost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7619821Z "line": 1203 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7619931Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7620031Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7620180Z "path": "crates/spt-daemon/src/nethost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7620284Z "line": 1244 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7620388Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7620490Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7620637Z "path": "crates/spt-daemon/src/shellhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7620741Z "line": 456 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7620847Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7620951Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7621090Z "path": "crates/spt-daemon/src/tunnelhub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7621200Z "line": 44 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7621289Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7621385Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7621534Z "path": "crates/spt-daemon/src/tunnelhub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7621637Z "line": 208 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7621742Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7621837Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7621978Z "path": "crates/spt-daemon/src/tunnelhub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7622083Z "line": 227 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7622189Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7622292Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7622436Z "path": "crates/spt-daemon/src/tunnelhub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7622555Z "line": 253 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7622654Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7622761Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7622908Z "path": "crates/spt-daemon/src/tunnelhub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7623013Z "line": 272 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7623128Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7623227Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7623367Z "path": "crates/spt-daemon/src/tunnelhub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7623475Z "line": 392 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7623584Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7623686Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7623837Z "path": "crates/spt-daemon/src/tunnelhub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7623948Z "line": 421 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7624048Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7624147Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7624287Z "path": "crates/spt-daemon/src/tunnelhub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7624401Z "line": 439 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7624509Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7624609Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7624751Z "path": "crates/spt-daemon/src/tunnelhub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7624859Z "line": 458 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7624965Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7625060Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7625217Z "path": "crates/spt-daemon/src/tunnelhub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7625323Z "line": 486 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7625423Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7625526Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7625766Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7625875Z "line": 624 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7625976Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7626076Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7626224Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7626424Z "line": 829 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7626534Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7626634Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7626781Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7626887Z "line": 435 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7627000Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7627109Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7627238Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7627355Z "line": 6574 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7627454Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7627550Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7627651Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7627760Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7627875Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7627975Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7628084Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7628232Z "path": "crates/spt/tests/tunnel_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7628341Z "line": 18 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7628432Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7628538Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7628638Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7628742Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7628858Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7629028Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7629134Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7629276Z "path": "crates/spt-daemon/src/nethost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7629396Z "line": 1479 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7629501Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7629595Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7629740Z "path": "crates/spt-daemon/src/nethost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7629849Z "line": 1508 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7629952Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7630057Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7630205Z "path": "crates/spt-daemon/src/tunnelhub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7630324Z "line": 504 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7630415Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7630520Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7630662Z "path": "crates/spt-daemon/src/tunnelhub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7630768Z "line": 514 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7630868Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7630972Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7631121Z "path": "crates/spt-daemon/src/tunnelhub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7631225Z "line": 531 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7631331Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7631431Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7631578Z "path": "crates/spt-daemon/src/tunnelhub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7631689Z "line": 543 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7631779Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7631888Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7632019Z "path": "crates/spt-daemon/src/tunnelhub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7632126Z "line": 555 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7632230Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7632336Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7632481Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7632585Z "line": 1145 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7632696Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7632796Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7632938Z "path": "crates/spt/src/api/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7633049Z "line": 776 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7633153Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7633263Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7633359Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7633463Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7633559Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7633668Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7633773Z "id": "REQ-SHELL-5", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7635032Z "title": "Shell ownership is owner-type-agnostic: any non-Shell endpoint type may own/spawn/drive/command/link a shell (Gateway the named first) — control-exclusivity keys on the owner endpoint_id, NEVER on the owner's endpoint type. No ownership path (mint, launch, owner-from-link, cmd, drive, tunnel, sleep/wake, owner-shutdown) inspects the owner's type (CONTEXT:264, ratified 2026-06-11 Gateway grill).", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7635278Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7635381Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7635573Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7635677Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7635782Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7635883Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7635987Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7636091Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7636202Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7636316Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7636416Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7636546Z "path": "CONTEXT.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7636659Z "line": 284 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7636755Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7636860Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7636954Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7637060Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7637161Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7637264Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7637375Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7637523Z "path": "crates/spt-daemon/src/shellhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7637631Z "line": 260 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7637736Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7637840Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7637943Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7638053Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7638163Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7638262Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7638363Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7638511Z "path": "crates/spt-daemon/tests/twohost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7638615Z "line": 827 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7642235Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7642371Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7642549Z "path": "crates/spt-daemon/tests/twohost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7642663Z "line": 1290 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7642776Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7642876Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7643055Z "path": "crates/spt/tests/gateway_owner_shell_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7643160Z "line": 23 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7643266Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7643370Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7643470Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7643576Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7643689Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7643799Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7643900Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7644061Z "path": "crates/spt-daemon/src/linkhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7644167Z "line": 803 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7644262Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7644361Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7644462Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7644567Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7644662Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7644763Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7644882Z "id": "REQ-START-1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7645097Z "title": "Adapters never resolve SPT_HOME; binary on PATH; api bridging only", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7645215Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7645320Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7645421Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7645521Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7645629Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7645729Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7645847Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7645951Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7646046Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7646157Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7646270Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7646375Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7646481Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7646623Z "path": "crates/spt-store/src/seed.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7646729Z "line": 16 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7646833Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7646938Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7647039Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7647143Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7647262Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7647514Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7647625Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7647721Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7647839Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7647945Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7648050Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7648286Z "path": "crates/spt-store/src/seed.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7648396Z "line": 48 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7648499Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7648603Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7648743Z "path": "crates/spt-store/src/seed.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7648841Z "line": 63 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7649029Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7649128Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7649214Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7649315Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7649429Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7649528Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7649644Z "id": "REQ-START-2", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7649819Z "title": "Harness-hosted startup: api seed then listen", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7649944Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7650034Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7650138Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7650240Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7650349Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7650449Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7650555Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7650668Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7650773Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7650875Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7650974Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7651092Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7651197Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7651303Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7651444Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7651545Z "line": 16 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7651651Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7651749Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7651889Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7651993Z "line": 115 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7652093Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7652199Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7652322Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7652436Z "line": 300 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7652533Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7652642Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7652737Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7652833Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7652946Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7653052Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7653158Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7653298Z "path": "crates/spt/tests/contract_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7653403Z "line": 186 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7653503Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7653606Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7653710Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7653816Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7653930Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7654030Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7654136Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7654268Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7654379Z "line": 590 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7654483Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7654583Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7654727Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7654827Z "line": 623 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7654931Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7655032Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7655127Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7655232Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7655328Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7655423Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7655542Z "id": "REQ-START-3", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7655743Z "title": "spt-hosted startup: spawn-session then api bind (no file)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7655856Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7655963Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7656076Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7656175Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7656280Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7656487Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7656592Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7656707Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7656816Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7656926Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7657027Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7657236Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7657341Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7657446Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7657584Z "path": "crates/spt-daemon/src/seedmap.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7657694Z "line": 23 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7657799Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7657899Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7658051Z "path": "crates/spt-daemon/src/seedmap.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7658165Z "line": 205 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7658272Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7658356Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7658495Z "path": "crates/spt-daemon/src/seedmap.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7658601Z "line": 221 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7658704Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7658808Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7659030Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7659125Z "line": 17 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7659230Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7659336Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7659502Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7659613Z "line": 35 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7659717Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7659812Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7659951Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7660055Z "line": 116 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7660161Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7660265Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7660365Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7660471Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7660580Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7660694Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7660786Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7660937Z "path": "crates/spt/tests/contract_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7661037Z "line": 488 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7661129Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7661228Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7661333Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7661435Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7661539Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7661647Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7661752Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7661891Z "path": "crates/spt-daemon/src/seedmap.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7661995Z "line": 381 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7662095Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7662196Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7662343Z "path": "crates/spt-daemon/src/seedmap.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7662444Z "line": 402 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7662554Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7662658Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7662797Z "path": "crates/spt-daemon/src/seedmap.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7662901Z "line": 412 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7663011Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7663112Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7663244Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7663350Z "line": 591 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7663455Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7663559Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7663694Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7663793Z "line": 624 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7663897Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7663997Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7664133Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7664237Z "line": 657 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7664338Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7664430Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7664533Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7664633Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7664734Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7664833Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7664944Z "id": "REQ-START-4", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7665210Z "title": "Adapter-injected env aliases (SPT/OWL/LIVE)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7665316Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7665421Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7665525Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7665621Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7665725Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7665941Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7666054Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7666164Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7666266Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7666363Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7666479Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7666585Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7666688Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7666835Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7666940Z "line": 585 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7667038Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7667137Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7667239Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7667338Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7667443Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7667554Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7667653Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7667758Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7667864Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7667964Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7668068Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7668207Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7668311Z "line": 1026 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7668406Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7668508Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7668602Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7668702Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7668808Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7668907Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7669104Z "id": "REQ-START-5", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7671985Z "title": "Adapter-agnostic harness-hosted seed + bind-time adapter/profile resolution (ADR-0021): `api seed` carries only parent_pid + session_id (+ optional cwd), no --adapter — a pure \"a harness session exists at this pid\" record; --adapter becomes an OPTIONAL override across the whole api group (an explicit name[:profile] for adapter dev, never required). Omitted, listen/poll resolve the owning adapter/profile AT BIND as a pure read against the live registry — never a seed-time snapshot that can drift: seed parent_pid → exe basename → host_binaries candidate set (REQ-MANIFEST-8) → active-profile pointer (REQ-INSTALL-12) primary, else greatest-registered_at_ms candidate base profile (name-asc tie) → friendly zero-match error. Covers BOTH LiveAgent (listen) and ReadyAgent (poll) bringup. Restores legacy parity: `$LIVE start ` → `$SPT listen ` with no mandatory --adapter, one generic SessionStart hook per harness binary. (v0.9.0)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7672117Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7672221Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7672322Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7672432Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7672540Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7672637Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7672756Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7672846Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7672966Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7673075Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7673179Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7673304Z "path": "CONTEXT.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7673413Z "line": 176 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7673523Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7673619Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7673795Z "path": "docs-site/src/harness-contract/api.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7673896Z "line": 28 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7674001Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7674105Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7674205Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7674306Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7674418Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7674528Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7674624Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7674779Z "path": "crates/spt-runtime/src/resolve.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7674888Z "line": 26 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7675093Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7675198Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7675342Z "path": "crates/spt-runtime/src/resolve.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7675455Z "line": 212 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7675552Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7675746Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7675891Z "path": "crates/spt-runtime/src/resolve.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7675990Z "line": 221 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7676095Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7676186Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7676329Z "path": "crates/spt/src/api/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7676433Z "line": 485 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7676539Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7676643Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7676778Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7676882Z "line": 36 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7676986Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7677088Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7677220Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7677324Z "line": 118 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7677429Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7677524Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7677655Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7677765Z "line": 329 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7677861Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7677965Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7678066Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7678170Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7678275Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7678381Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7678475Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7678628Z "path": "crates/spt/tests/live_resolve_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7678734Z "line": 17 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7678833Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7679024Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7679124Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7679233Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7679339Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7679444Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7679548Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7679693Z "path": "crates/spt-runtime/src/resolve.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7679805Z "line": 358 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7679900Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7679995Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7680132Z "path": "crates/spt-runtime/src/resolve.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7680236Z "line": 371 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7680337Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7680437Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7680560Z "path": "crates/spt/src/api/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7680662Z "line": 597 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7680766Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7680870Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7680972Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7681076Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7681175Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7681272Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7681376Z "id": "REQ-STORE-1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7682306Z "title": "spt-store::BranchStore (git branch as versioned KV; commit=checkpoint/tip=resume, atomic multi-key, merge-native sync) is the substrate for coarse/durable/audited state (context, registry snapshot+distribution, daemon checkpoint); hot paths (B5 fsync journal) + indexed queries (SQLite spool) excluded (ADR-0011)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7682425Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7682521Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7682617Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7682720Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7682824Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7682925Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7683049Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7683158Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7683259Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7683363Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7683468Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7683579Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7683678Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7683836Z "path": "crates/spt-store/src/branchstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7684050Z "line": 23 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7684146Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7684255Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7684402Z "path": "crates/spt-store/src/branchstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7684508Z "line": 46 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7684703Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7684809Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7684955Z "path": "crates/spt-store/src/branchstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7685060Z "line": 97 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7685164Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7685263Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7685400Z "path": "crates/spt-store/src/branchstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7685516Z "line": 125 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7685611Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7685715Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7685863Z "path": "crates/spt-store/src/branchstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7685972Z "line": 207 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7686074Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7686178Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7686330Z "path": "crates/spt-store/src/branchstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7686436Z "line": 231 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7686541Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7686645Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7686798Z "path": "crates/spt-store/src/branchstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7686903Z "line": 467 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7687013Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7687118Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7687265Z "path": "crates/spt-store/src/contextstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7687376Z "line": 25 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7687475Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7687575Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7687715Z "path": "crates/spt-store/src/contextstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7687827Z "line": 120 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7687931Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7688027Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7688182Z "path": "crates/spt-store/src/contextstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7688287Z "line": 148 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7688392Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7688492Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7688645Z "path": "crates/spt-store/src/contextstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7688750Z "line": 165 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7688849Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7689041Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7689178Z "path": "crates/spt-store/src/contextstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7689299Z "line": 180 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7689417Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7689517Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7689675Z "path": "crates/spt-store/src/contextstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7689779Z "line": 198 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7689885Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7689976Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7690127Z "path": "crates/spt-store/src/contextstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7690243Z "line": 207 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7690347Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7690451Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7690594Z "path": "crates/spt-store/src/project.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7690696Z "line": 16 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7690796Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7690892Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7691044Z "path": "crates/spt-store/src/project.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7691154Z "line": 63 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7691255Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7691359Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7691459Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7691565Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7691693Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7691803Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7691898Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7691993Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7692093Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7692209Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7692308Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7692579Z "path": "crates/spt-store/src/branchstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7692694Z "line": 584 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7692795Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7692894Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7693038Z "path": "crates/spt-store/src/branchstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7693233Z "line": 594 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7693327Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7693427Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7693580Z "path": "crates/spt-store/src/branchstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7693684Z "line": 616 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7693790Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7693886Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7694033Z "path": "crates/spt-store/src/branchstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7694139Z "line": 632 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7694243Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7694348Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7694491Z "path": "crates/spt-store/src/branchstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7694591Z "line": 690 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7694696Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7694801Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7694939Z "path": "crates/spt-store/src/contextstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7695050Z "line": 472 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7695154Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7695249Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7695403Z "path": "crates/spt-store/src/contextstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7695511Z "line": 507 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7695615Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7695715Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7695865Z "path": "crates/spt-store/src/project.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7695970Z "line": 120 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7696067Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7696171Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7696314Z "path": "crates/spt-store/src/project.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7696424Z "line": 128 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7696523Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7696629Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7696734Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7696833Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7696934Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7697039Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7697158Z "id": "REQ-SUBNET-1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7697510Z "title": "spt subnet noun namespace: status view (bare + status [NAME] [--nodes]), create (QR/otpauth), show-code; spt pair deleted", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7697631Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7697734Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7697839Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7697936Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7698044Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7698149Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7698260Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7698364Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7698468Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7698573Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7698676Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7698780Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7698881Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7699210Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7699325Z "line": 281 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7699433Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7699534Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7699682Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7699791Z "line": 651 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7699887Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7699992Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7700115Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7700231Z "line": 3399 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7700330Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7700435Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7700560Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7700678Z "line": 3709 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7700784Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7700884Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7701016Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7701120Z "line": 3728 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7701332Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7701428Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7701563Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7701666Z "line": 3792 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7701767Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7701872Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7702106Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7702225Z "line": 3834 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7702319Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7702421Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7702554Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7702658Z "line": 4023 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7702765Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7702864Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7702992Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7703103Z "line": 4093 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7703207Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7703312Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7703436Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7703555Z "line": 4317 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7703647Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7703751Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7703873Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7703992Z "line": 4961 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7704094Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7704188Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7704317Z "path": "crates/spt/src/wansend.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7704427Z "line": 418 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7704531Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7704627Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7704737Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7704846Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7704951Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7705066Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7705170Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7705271Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7705380Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7705485Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7705586Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7705737Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7705838Z "line": 1584 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7705940Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7706037Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7706161Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7706280Z "line": 9964 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7706388Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7706492Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7706622Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7706726Z "line": 10134 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7706831Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7706932Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7707060Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7707169Z "line": 10141 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7707270Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7707384Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7707504Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7707618Z "line": 10194 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7707718Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7707828Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7707956Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7708066Z "line": 10211 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7708172Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7708276Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7708404Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7708510Z "line": 10241 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7708619Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7708724Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7708844Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7709023Z "line": 10357 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7709119Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7709218Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7709340Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7709455Z "line": 10508 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7709565Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7709664Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7709765Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7709965Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7710061Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7710161Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7710280Z "id": "REQ-SUBNET-2", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7710542Z "title": "Guided join e2e: spt subnet join CLI initiator + always-on daemon pairing responder", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7710781Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7710885Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7710986Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7711091Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7711194Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7711301Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7711406Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7711509Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7711623Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7711723Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7711907Z "path": "docs/adr/0005-totp-seeded-spake2-node-pairing.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7712017Z "line": 60 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7712109Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7712207Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7712313Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7712417Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7712522Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7712633Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7712732Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7712879Z "path": "crates/spt-daemon/src/brain.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7712995Z "line": 886 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7713089Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7713194Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7713325Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7713434Z "line": 2082 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7713538Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7713639Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7713777Z "path": "crates/spt-daemon/src/nethost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7713882Z "line": 683 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7713987Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7714086Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7714240Z "path": "crates/spt-daemon/src/nethost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7714349Z "line": 867 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7714453Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7714557Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7714691Z "path": "crates/spt-daemon/src/pairhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7714805Z "line": 26 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7714901Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7715002Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7715158Z "path": "crates/spt-daemon/src/pairhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7715263Z "line": 60 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7715368Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7715463Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7715606Z "path": "crates/spt-daemon/src/pairhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7715706Z "line": 168 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7715812Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7715917Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7716054Z "path": "crates/spt-daemon/src/pairhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7716165Z "line": 295 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7716260Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7716364Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7716514Z "path": "crates/spt-daemon/src/pairhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7716612Z "line": 417 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7716721Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7716821Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7716976Z "path": "crates/spt-net/src/net/pairing/meet.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7717081Z "line": 252 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7717187Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7717286Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7717419Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7717521Z "line": 3755 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7717624Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7717730Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7717859Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7717968Z "line": 4256 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7718069Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7718173Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7718302Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7718408Z "line": 4892 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7718602Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7718703Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7718812Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7718917Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7719113Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7719227Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7719423Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7719574Z "path": "crates/spt-daemon/tests/pairjoin.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7719679Z "line": 22 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7719787Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7719886Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7720034Z "path": "crates/spt-daemon/tests/twohost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7720139Z "line": 645 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7720238Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7720345Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7720482Z "path": "crates/spt-daemon/tests/twohost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7720592Z "line": 887 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7720698Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7723797Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7723960Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7724069Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7724185Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7724298Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7724389Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7724552Z "path": "crates/spt-daemon/src/pairhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7724666Z "line": 586 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7724767Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7724867Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7724998Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7725108Z "line": 10004 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7725209Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7725308Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7725437Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7725542Z "line": 10715 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7725651Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7725752Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7725852Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7725956Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7726057Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7726157Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7726266Z "id": "REQ-SUBNET-3", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7726563Z "title": "Node labels: hostname-default, gossiped, addressable in @node qualifiers (refuse-on-ambiguity)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7726682Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7726787Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7726896Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7727001Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7727093Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7727191Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7727295Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7727396Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7727498Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7727602Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7727713Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7727822Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7727922Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7728071Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7728175Z "line": 152 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7728280Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7728386Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7728542Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7728648Z "line": 299 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7728753Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7728847Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7729096Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7729210Z "line": 443 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7729307Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7729419Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7729578Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7729692Z "line": 532 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7729792Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7729893Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7730044Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7730152Z "line": 125 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7730258Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7730361Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7730666Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7730766Z "line": 253 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7730861Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7730962Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7731113Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7731310Z "line": 264 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7731409Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7731510Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7731648Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7731757Z "line": 285 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7731859Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7731963Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7732106Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7732216Z "line": 621 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7732320Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7732416Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7732564Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7732677Z "line": 680 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7732767Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7732863Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7733012Z "path": "crates/spt-net/src/net/replicate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7733113Z "line": 61 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7733214Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7733313Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7733452Z "path": "crates/spt-net/src/net/replicate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7733552Z "line": 90 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7733656Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7733753Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7733900Z "path": "crates/spt-net/src/net/replicate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7734009Z "line": 125 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7734106Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7734200Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7734339Z "path": "crates/spt-store/src/hostlabel.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7734449Z "line": 9 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7734544Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7734649Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7734778Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7734887Z "line": 4093 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7734988Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7735089Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7735211Z "path": "crates/spt/src/wansend.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7735322Z "line": 445 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7735422Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7735520Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7735611Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7735711Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7735817Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7735920Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7736021Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7736122Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7736235Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7736346Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7736446Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7736603Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7736713Z "line": 1356 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7736813Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7736908Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7737056Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7737165Z "line": 1713 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7737271Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7737375Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7737518Z "path": "crates/spt-daemon/tests/dispatch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7737624Z "line": 892 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7737727Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7737827Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7737970Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7738073Z "line": 991 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7738177Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7738278Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7738421Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7738526Z "line": 1041 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7738626Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7738730Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7739045Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7739145Z "line": 1100 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7739251Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7739351Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7739508Z "path": "crates/spt-net/src/net/replicate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7739713Z "line": 234 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7739814Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7739923Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7740066Z "path": "crates/spt-store/src/hostlabel.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7740177Z "line": 49 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7740266Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7740366Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7740496Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7740604Z "line": 10357 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7740708Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7740813Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7740940Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7741044Z "line": 10463 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7741145Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7741255Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7741378Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7741489Z "line": 10681 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7741588Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7741692Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7741790Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7741889Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7741998Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7742095Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7742194Z "id": "REQ-SUBNET-4", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7742513Z "title": "Subnet membership mutations elevation-gated (create = seed reveal; join = trust-boundary enrollment)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7742628Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7742729Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7742837Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7742933Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7743034Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7743134Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7743246Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7743351Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7743446Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7743635Z "path": "docs/adr/0005-totp-seeded-spake2-node-pairing.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7743741Z "line": 60 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7743831Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7743930Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7744032Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7744137Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7744250Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7744356Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7744446Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7744569Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7744675Z "line": 3399 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7744779Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7744879Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7745005Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7745114Z "line": 4859 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7745218Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7745314Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7745447Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7745558Z "line": 4892 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7745658Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7745752Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7745863Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7745963Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7746081Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7746190Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7746291Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7746386Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7746495Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7746601Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7746706Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7746829Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7746940Z "line": 10120 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7747030Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7747124Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7747249Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7747364Z "line": 10194 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7747468Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7747663Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7747758Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7747860Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7747959Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7748054Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7748165Z "id": "REQ-SUBNET-5", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7749478Z "title": "Per-subnet serve-state: spt subnet detach [--save] / attach [--save] — daemon keeps running, stops/starts advertising + connecting for that subnet (peer pump + responder selective); --save persists the startup default in daemon config; the all-attached banner gains per-subnet states (M8 decision 6, --save renamed from --auto per decision 25 session)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7749705Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7749807Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7749902Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7750006Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7750102Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7750201Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7750306Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7750412Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7750530Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7750630Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7750727Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7750835Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7750941Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7751042Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7751202Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7751311Z "line": 128 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7751412Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7751509Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7751658Z "path": "crates/spt-daemon/src/dispatch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7751763Z "line": 413 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7751871Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7751957Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7752101Z "path": "crates/spt-daemon/src/pairhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7752205Z "line": 74 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7752311Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7752416Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7752553Z "path": "crates/spt-daemon/src/pump/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7752664Z "line": 332 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7752763Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7752868Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7753008Z "path": "crates/spt-daemon/src/pump/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7753121Z "line": 621 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7753216Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7753318Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7753464Z "path": "crates/spt-daemon/src/serveprobe.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7753561Z "line": 31 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7753665Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7753764Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7753916Z "path": "crates/spt-daemon/src/serveprobe.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7754020Z "line": 50 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7754119Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7754224Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7754368Z "path": "crates/spt-daemon/src/serveprobe.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7754471Z "line": 69 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7754573Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7754673Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7754824Z "path": "crates/spt-daemon/src/serveprobe.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7754921Z "line": 113 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7755025Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7755124Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7755273Z "path": "crates/spt-net/src/net/serveprobe.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7755378Z "line": 25 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7755483Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7755583Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7755726Z "path": "crates/spt-net/src/net/serveprobe.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7755837Z "line": 34 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7755936Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7756036Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7756190Z "path": "crates/spt-store/src/attachment.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7756293Z "line": 17 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7756394Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7756491Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7756716Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7756817Z "line": 4817 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7756918Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7757017Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7757151Z "path": "crates/spt/src/wansend.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7757350Z "line": 419 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7757452Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7757551Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7757651Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7757757Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7757866Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7757956Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7758062Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7758205Z "path": "crates/spt-daemon/tests/dispatch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7758314Z "line": 821 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7758415Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7758505Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7758605Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7758711Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7758820Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7758923Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7759114Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7759255Z "path": "crates/spt-daemon/src/config.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7759360Z "line": 341 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7759461Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7759559Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7759708Z "path": "crates/spt-daemon/src/pump/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7759813Z "line": 1115 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7759917Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7760014Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7760166Z "path": "crates/spt-daemon/src/serveprobe.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7760270Z "line": 151 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7760367Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7760462Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7760609Z "path": "crates/spt-net/src/net/serveprobe.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7760715Z "line": 61 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7760810Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7760910Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7761058Z "path": "crates/spt-store/src/attachment.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7761167Z "line": 111 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7761269Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7761368Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7761515Z "path": "crates/spt-store/src/attachment.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7761621Z "line": 138 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7761725Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7761815Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7761957Z "path": "crates/spt-store/src/attachment.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7762065Z "line": 148 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7762160Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7762256Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7762385Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7762489Z "line": 10021 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7762590Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7762695Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7762799Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7762895Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7763005Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7763104Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7763220Z "id": "REQ-SUBNET-6", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7763957Z "title": "Trust lifecycle verbs, elevation-gated: spt subnet leave (membership exit) and spt subnet prune (removes a dead identity's trust + registry rows, killing its dead dials; trust mutation = security surface, REQ-PAIR-6 gate machinery) (M8 decisions 6-7)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7764077Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7764179Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7764282Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7764386Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7764486Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7764589Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7764708Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7764818Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7764918Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7765018Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7765123Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7765223Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7765423Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7765576Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7765680Z "line": 254 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7765787Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7765890Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7766019Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7766210Z "line": 4475 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7766315Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7766411Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7766534Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7766648Z "line": 4492 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7766750Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7766848Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7766973Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7767079Z "line": 4545 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7767182Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7767281Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7767406Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7767520Z "line": 4568 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7767625Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7767731Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7767830Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7767934Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7768045Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7768150Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7768254Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7768355Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7768469Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7768564Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7768670Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7768784Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7768898Z "line": 10035 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7769084Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7769184Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7769324Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7769446Z "line": 10068 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7769541Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7769641Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7769768Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7769881Z "line": 10077 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7769983Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7770082Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7770177Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7770273Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7770373Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7770482Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7770583Z "id": "REQ-SUBNET-7", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7772262Z "title": "Per-machine re-pair trust overwrite: registry rows carry a hashed stable machine identifier (OS machine id /etc/machine-id|MachineGuid, domain-separated SHA-256 before gossip, spt-minted persisted UUID fallback; additive serde-default field — old rows parse clean); a COMPLETED pairing ceremony presenting the same node label AND machine id as an existing trusted row evicts the superseded identity's trust + registry rows on the seed-holder and replicates the eviction; a gossiped claim alone never evicts trust (M8 decisions 13, 22)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7772384Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7772480Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7772588Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7772691Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7772792Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7772897Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7773006Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7773112Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7773212Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7773311Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7773422Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7773531Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7773635Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7773784Z "path": "crates/spt-daemon/src/machineid.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7773903Z "line": 17 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7774003Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7774109Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7774261Z "path": "crates/spt-daemon/src/pairhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7774361Z "line": 103 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7774467Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7774565Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7774833Z "path": "crates/spt-daemon/src/pairhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7774927Z "line": 312 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7775032Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7775141Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7775282Z "path": "crates/spt-daemon/src/pump/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7775483Z "line": 131 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7775578Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7775683Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7775840Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7775949Z "line": 160 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7776051Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7776150Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7776303Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7776398Z "line": 447 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7776498Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7776598Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7776741Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7776860Z "line": 670 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7776957Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7777061Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7777213Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7777320Z "line": 710 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7777423Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7777519Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7777667Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7777780Z "line": 766 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7777885Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7777986Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7778142Z "path": "crates/spt-net/src/net/pairing/wire.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7778262Z "line": 136 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7778362Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7778466Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7778610Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7778715Z "line": 139 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7778814Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7778920Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7779100Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7779197Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7779325Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7779434Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7779536Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7779644Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7779754Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7779856Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7779963Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7780115Z "path": "crates/spt-daemon/src/machineid.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7780220Z "line": 136 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7780323Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7780413Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7780562Z "path": "crates/spt-daemon/src/machineid.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7780671Z "line": 156 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7780766Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7780867Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7781009Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7781125Z "line": 987 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7781225Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7781333Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7781487Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7781596Z "line": 1009 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7781701Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7781797Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7781939Z "path": "crates/spt-net/src/net/pairing/wire.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7782044Z "line": 1419 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7782150Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7782254Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7782394Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7782507Z "line": 1036 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7782607Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7782713Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7782812Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7782906Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7783011Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7783111Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7783333Z "id": "REQ-SUBNET-8", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7784458Z "title": "Status render honesty: zero-subnet text is daemon-aware ('No subnets registered — this node is standalone.' + daemon-running-dependent blurb, never implying messaging works while the daemon is down); hint footer prints on bare spt subnet only (status drops it); a stalled pump is surfaced in subnet status, never rendered implied-healthy (M8 decisions 11-12, 23)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7784669Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7784777Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7784878Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7784984Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7785087Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7785197Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7785303Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7785407Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7785511Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7785616Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7785729Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7785842Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7785938Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7786062Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7786171Z "line": 3835 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7786277Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7786377Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7786505Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7786611Z "line": 3864 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7786706Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7786810Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7786931Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7787044Z "line": 3881 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7787139Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7787246Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7787369Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7787473Z "line": 3904 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7787570Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7787678Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7787803Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7787913Z "line": 4318 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7788012Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7788113Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7788214Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7788307Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7788406Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7788522Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7788621Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7788726Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7788827Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7789017Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7789113Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7789227Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7789346Z "line": 10225 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7789457Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7789556Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7789680Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7789786Z "line": 10241 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7789885Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7789980Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7790091Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7790190Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7790295Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7790396Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7790500Z "id": "REQ-TERM-1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7790694Z "title": "Process-supervisor terminal wrapper hosting broker PTYs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7790803Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7790912Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7791016Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7791108Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7791202Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7791312Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7791422Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7791527Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7791636Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7791742Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7791850Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7791956Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7792061Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7792189Z "path": "crates/spt-term/src/pty.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7792309Z "line": 59 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7792528Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7792624Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7792757Z "path": "crates/spt-term/src/pty.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7792857Z "line": 234 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7792963Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7793158Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7793302Z "path": "crates/spt-term/src/surface.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7793410Z "line": 100 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7793509Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7793614Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7793717Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7793821Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7793932Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7794046Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7794145Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7794242Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7794356Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7794464Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7794571Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7794718Z "path": "crates/spt-term/tests/surface.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7794813Z "line": 24 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7794919Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7795018Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7795152Z "path": "crates/spt-term/tests/surface.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7795262Z "line": 56 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7795361Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7795457Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7795553Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7795652Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7795752Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7795854Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7795967Z "id": "REQ-TERM-2", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7796176Z "title": "session-surface abstraction; send-keys + send-line injection", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7796289Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7796393Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7796493Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7796595Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7796698Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7796799Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7796908Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7797012Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7797118Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7797227Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7797336Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7797447Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7797552Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7797690Z "path": "crates/spt-term/src/surface.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7797796Z "line": 117 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7797900Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7798000Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7798130Z "path": "crates/spt-term/src/surface.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7798238Z "line": 127 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7798339Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7798440Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7798538Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7798649Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7798769Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7798872Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7799062Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7799159Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7799277Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7799397Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7799506Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7799654Z "path": "crates/spt-term/tests/inject.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7799759Z "line": 46 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7799867Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7799968Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7800116Z "path": "crates/spt-term/tests/inject.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7800225Z "line": 77 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7800332Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7800426Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7800526Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7800627Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7800727Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7800826Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7800932Z "id": "REQ-TERM-3", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7801102Z "title": "Byte-stream remote terminal streaming for v1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7801221Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7801429Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7801538Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7801634Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7801743Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7801848Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7801959Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7802068Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7802260Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7805207Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7805358Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7805470Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7805574Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7805722Z "path": "crates/spt-term/src/stream.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7805827Z "line": 71 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7805926Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7806027Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7806132Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7806236Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7806347Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7806461Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7806565Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7806678Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7806793Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7806887Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7806991Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7807140Z "path": "crates/spt-term/tests/stream.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7807248Z "line": 37 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7807354Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7807454Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7807596Z "path": "crates/spt-term/tests/stream.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7807702Z "line": 67 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7807802Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7807906Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7808008Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7808112Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7808198Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7808293Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7808403Z "id": "REQ-TERM-4", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7808928Z "title": "Live activity buffer (session digest): projection of normalized session logs, snapshot-pull (spt endpoint digest) + structured-delta-stream contract + api digest-entry push", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7809132Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7809243Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7809348Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7809455Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7809550Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7809652Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7809766Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7809874Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7809986Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7810090Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7810189Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7810310Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7810419Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7810519Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7810681Z "path": "crates/spt-daemon/src/digest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7810780Z "line": 37 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7810887Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7810991Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7811148Z "path": "crates/spt-daemon/src/digesthub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7811245Z "line": 25 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7811353Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7811454Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7811602Z "path": "crates/spt-daemon/src/digesthub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7811696Z "line": 114 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7811800Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7811905Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7812051Z "path": "crates/spt-daemon/src/digesthub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7812165Z "line": 267 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7812267Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7812360Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7812499Z "path": "crates/spt-daemon/src/digesthub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7812605Z "line": 289 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7812704Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7812805Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7812961Z "path": "crates/spt-daemon/src/digesthub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7813066Z "line": 307 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7813168Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7813405Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7813553Z "path": "crates/spt-store/src/history.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7813658Z "line": 33 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7813759Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7813862Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7814020Z "path": "crates/spt-term/src/projection.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7814220Z "line": 52 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7814330Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7814432Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7814582Z "path": "crates/spt-term/src/projection.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7814691Z "line": 180 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7814786Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7814889Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7815032Z "path": "crates/spt-term/src/projection.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7815143Z "line": 190 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7815242Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7815338Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7815477Z "path": "crates/spt-term/src/projection.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7815581Z "line": 250 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7815682Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7815781Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7815923Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7816030Z "line": 284 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7816139Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7816238Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7816373Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7816486Z "line": 295 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7816587Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7816688Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7816815Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7816931Z "line": 1193 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7817036Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7817135Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7817234Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7817325Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7817437Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7817532Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7817637Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7817785Z "path": "crates/spt-daemon/tests/digest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7817899Z "line": 18 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7817996Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7818095Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7818190Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7818300Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7818410Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7818520Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7818611Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7818758Z "path": "crates/spt-daemon/src/digest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7818863Z "line": 364 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7819063Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7819159Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7819311Z "path": "crates/spt-daemon/src/digest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7819435Z "line": 416 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7819527Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7819630Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7819759Z "path": "crates/spt-daemon/src/digest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7819870Z "line": 426 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7819973Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7820077Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7820231Z "path": "crates/spt-daemon/src/digesthub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7820335Z "line": 436 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7820439Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7820541Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7820692Z "path": "crates/spt-daemon/src/digesthub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7820798Z "line": 456 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7820907Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7821007Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7821151Z "path": "crates/spt-daemon/src/digesthub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7821260Z "line": 478 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7821360Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7821466Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7821604Z "path": "crates/spt-daemon/src/digesthub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7821718Z "line": 491 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7821913Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7822014Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7822157Z "path": "crates/spt-daemon/src/digesthub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7822260Z "line": 502 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7822360Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7822461Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7822697Z "path": "crates/spt-store/src/history.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7822807Z "line": 108 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7822906Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7823011Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7823150Z "path": "crates/spt-term/src/digest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7823259Z "line": 119 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7823360Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7823455Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7823598Z "path": "crates/spt-term/src/digest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7823704Z "line": 127 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7823808Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7823903Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7824052Z "path": "crates/spt-term/src/projection.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7824161Z "line": 474 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7824270Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7824372Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7824518Z "path": "crates/spt-term/src/projection.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7824620Z "line": 501 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7824724Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7824828Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7824958Z "path": "crates/spt-term/src/projection.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7825062Z "line": 520 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7825166Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7825266Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7825412Z "path": "crates/spt-term/src/projection.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7825516Z "line": 535 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7825621Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7825722Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7825859Z "path": "crates/spt-term/src/projection.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7825965Z "line": 561 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7826074Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7826178Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7826313Z "path": "crates/spt-term/src/projection.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7826417Z "line": 581 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7826523Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7826623Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7826765Z "path": "crates/spt-term/src/projection.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7826871Z "line": 591 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7826975Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7827070Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7827215Z "path": "crates/spt-term/src/projection.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7827314Z "line": 683 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7827409Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7827515Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7827657Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7827765Z "line": 885 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7827866Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7827955Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7828082Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7828188Z "line": 9792 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7828289Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7828378Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7828489Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7828575Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7828679Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7828784Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7828889Z "id": "REQ-TERM-5", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7830661Z "title": "Adapter-declared digest extractor seam: a `[digest]` manifest section declaring an imperative extractor (native harness log -> the {role,text,tool,ts} contract; defaults to the [history] source files with an own-source escape hatch), `api digest-entry` push fallback, register-time validation of the section, adapter-declared presentation defaults (window depth, arg-truncation, sprint-collapse) that any consumer may override, and a `spt adapter digest-proof` author tool plus runtime skip-diagnostics (no silent drop). Reverses M9's no-manifest-seam stance; no declarative DSL.", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7830896Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7831000Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7831106Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7831201Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7831305Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7831401Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7831506Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7831706Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7831810Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7831915Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7832017Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7832149Z "path": "docs/MANIFEST.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7832254Z "line": 234 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7832360Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7832454Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7832554Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7832651Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7832759Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7832868Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7832959Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7833110Z "path": "crates/spt-daemon/src/digest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7833214Z "line": 75 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7833319Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7833419Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7833562Z "path": "crates/spt-daemon/src/digest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7833672Z "line": 131 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7833767Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7833872Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7834015Z "path": "crates/spt-live/src/digest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7834119Z "line": 22 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7834226Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7834321Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7834458Z "path": "crates/spt-live/src/digest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7834559Z "line": 87 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7834664Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7834768Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7834903Z "path": "crates/spt-term/src/digest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7835011Z "line": 30 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7835107Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7835213Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7835359Z "path": "crates/spt-term/src/projection.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7835465Z "line": 103 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7835566Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7835664Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7835807Z "path": "crates/spt-term/src/projection.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7835926Z "line": 167 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7836029Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7836129Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7836278Z "path": "crates/spt-term/src/projection.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7836391Z "line": 434 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7836487Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7836587Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7836715Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7836826Z "line": 5650 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7836911Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7837015Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7837141Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7837240Z "line": 5957 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7837345Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7837441Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7837540Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7837645Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7837756Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7837869Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7837965Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7838147Z "path": "crates/spt-daemon/tests/two_origin_spanning.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7838250Z "line": 17 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7838344Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7838445Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7838548Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7838647Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7838758Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7838872Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7839054Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7839201Z "path": "crates/spt-daemon/src/digest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7839305Z "line": 375 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7839573Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7839674Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7839802Z "path": "crates/spt-live/src/digest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7839907Z "line": 162 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7840008Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7840112Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7840342Z "path": "crates/spt-live/src/digest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7840450Z "line": 179 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7840555Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7840657Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7840793Z "path": "crates/spt-live/src/digest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7840899Z "line": 201 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7841000Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7841103Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7841231Z "path": "crates/spt-live/src/digest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7841327Z "line": 212 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7841427Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7841536Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7841666Z "path": "crates/spt-live/src/digest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7841770Z "line": 223 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7841875Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7841976Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7842113Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7842218Z "line": 1525 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7842328Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7842423Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7842572Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7842676Z "line": 1568 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7842781Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7842878Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7843019Z "path": "crates/spt-term/src/projection.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7843119Z "line": 606 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7843216Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7843319Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7843466Z "path": "crates/spt-term/src/projection.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7843571Z "line": 634 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7843684Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7843783Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7843927Z "path": "crates/spt-term/src/projection.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7844027Z "line": 646 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7844127Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7844223Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7844370Z "path": "crates/spt-term/src/projection.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7844481Z "line": 669 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7844580Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7844684Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7844810Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7844918Z "line": 8503 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7845023Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7845120Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7845238Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7845342Z "line": 8561 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7845444Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7845543Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7845648Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7845754Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7845844Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7845949Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7846054Z "id": "REQ-TERM-6", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7847285Z "title": "Thread-spanning digest across session boundaries: a per-endpoint session ledger (`/sessions.log`) appended at first bind and by `api boundary` on `/clear`|`/compact` session rotation, the digest enumerating the last K sessions so its rolling window bridges a boundary, and a distinctive in-timeline boundary marker (DigestEntry::Boundary). The digest follows the live-agent thread, not a single session.", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7847405Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7847496Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7847604Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7847701Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7847804Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7847909Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7848006Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7848114Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7848224Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7848425Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7848529Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7848650Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7848758Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7848862Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7849099Z "path": "crates/spt-daemon/src/digest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7849294Z "line": 132 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7849414Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7849513Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7849657Z "path": "crates/spt-daemon/src/digest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7849770Z "line": 187 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7849861Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7849967Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7850109Z "path": "crates/spt-store/src/sessions.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7850215Z "line": 17 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7850314Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7850414Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7850563Z "path": "crates/spt-store/src/sessions.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7850676Z "line": 104 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7850777Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7850878Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7851024Z "path": "crates/spt-term/src/projection.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7851134Z "line": 319 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7851241Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7851344Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7851489Z "path": "crates/spt-term/src/projection.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7851602Z "line": 396 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7851701Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7851801Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7851897Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7852001Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7852120Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7852226Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7852330Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7852503Z "path": "crates/spt-daemon/tests/two_origin_spanning.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7852612Z "line": 18 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7852716Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7852813Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7852917Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7853021Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7853142Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7853246Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7853351Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7853499Z "path": "crates/spt-store/src/sessions.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7853603Z "line": 135 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7853708Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7853814Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7853964Z "path": "crates/spt-store/src/sessions.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7854069Z "line": 150 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7854164Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7854272Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7854411Z "path": "crates/spt-store/src/sessions.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7854517Z "line": 166 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7854615Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7854706Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7854840Z "path": "crates/spt-store/src/sessions.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7854949Z "line": 257 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7855055Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7855155Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7855302Z "path": "crates/spt-term/src/projection.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7855413Z "line": 738 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7855517Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7855617Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7855770Z "path": "crates/spt-term/src/projection.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7855879Z "line": 759 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7855975Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7856075Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7856213Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7856324Z "line": 726 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7856423Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7856528Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7856634Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7856729Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7856827Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7856927Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7857149Z "id": "REQ-TERM-7", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7858379Z "title": "Two-origin digest merge: spt-owned context-injection entries (psyche_download | echo_mirror | owl_message) appended by spt to the endpoint `digest.log`, timestamp-interleaved with the adapter's extracted activity records into one ordered timeline, via a distinct context-injection record category. Data model only this milestone; GUI collapse/expand and the echo-reads-digest delta loop are deferred to the surfaces that consume them.", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7858604Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7858712Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7858813Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7858919Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7859109Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7859215Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7859328Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7859455Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7859556Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7859650Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7859754Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7859859Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7859969Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7860073Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7860217Z "path": "crates/spt-daemon/src/digest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7860321Z "line": 133 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7860426Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7860532Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7860673Z "path": "crates/spt-daemon/src/digest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7860775Z "line": 326 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7860870Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7860970Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7861113Z "path": "crates/spt-live/src/inject.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7861218Z "line": 15 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7861322Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7861428Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7861556Z "path": "crates/spt-live/src/inject.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7861666Z "line": 32 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7861772Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7861875Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7862005Z "path": "crates/spt-store/src/history.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7862111Z "line": 49 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7862218Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7862318Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7862471Z "path": "crates/spt-term/src/projection.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7862571Z "line": 286 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7862680Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7862776Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7862923Z "path": "crates/spt-term/src/projection.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7863029Z "line": 320 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7863134Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7863243Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7863339Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7863444Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7863557Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7863663Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7863763Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7863930Z "path": "crates/spt-daemon/tests/two_origin_spanning.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7864045Z "line": 19 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7864134Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7864240Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7864342Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7864449Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7864553Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7864668Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7864771Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7864908Z "path": "crates/spt-daemon/src/digest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7865024Z "line": 455 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7865128Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7865223Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7865367Z "path": "crates/spt-daemon/src/digest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7865466Z "line": 568 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7865572Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7865672Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7865800Z "path": "crates/spt-live/src/inject.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7865906Z "line": 58 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7866115Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7866225Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7866354Z "path": "crates/spt-live/src/inject.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7866472Z "line": 77 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7866565Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7866663Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7866894Z "path": "crates/spt-live/src/inject.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7867006Z "line": 87 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7867112Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7867213Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7867340Z "path": "crates/spt-store/src/history.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7867444Z "line": 94 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7867549Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7867648Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7867790Z "path": "crates/spt-term/src/projection.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7867896Z "line": 691 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7867995Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7868090Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7868235Z "path": "crates/spt-term/src/projection.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7868353Z "line": 716 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7868443Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7868544Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7868653Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7868754Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7868849Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7869039Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7869150Z "id": "REQ-UPD-1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7869297Z "title": "Peer-propagated update over P2P", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7869422Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7869531Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7869631Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7869737Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7869837Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7869939Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7870039Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7870154Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7870266Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7870361Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7870467Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7870581Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7870690Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7870796Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7870943Z "path": "crates/spt-daemon/src/propagate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7871049Z "line": 28 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7871148Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7871253Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7871397Z "path": "crates/spt-daemon/src/propagate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7871511Z "line": 103 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7871606Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7871703Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7871845Z "path": "crates/spt-daemon/src/propagate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7871959Z "line": 342 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7872060Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7872149Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7872304Z "path": "crates/spt-daemon/src/relcache.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7872408Z "line": 22 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7872517Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7872623Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7872765Z "path": "crates/spt-daemon/src/relcache.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7872873Z "line": 207 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7872979Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7873075Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7873216Z "path": "crates/spt-daemon/src/relcache.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7873318Z "line": 283 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7873422Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7873522Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7873670Z "path": "crates/spt-daemon/src/relcache.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7873779Z "line": 340 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7873880Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7873985Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7874127Z "path": "crates/spt-net/src/net/update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7874233Z "line": 37 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7874333Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7874437Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7874529Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7874638Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7874863Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7874967Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7875076Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7875233Z "path": "crates/spt-daemon/tests/dispatch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7875340Z "line": 207 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7875536Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7875641Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7875788Z "path": "crates/spt-daemon/tests/twohost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7875899Z "line": 1082 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7876003Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7876102Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7876208Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7876308Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7876417Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7876528Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7876618Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7876761Z "path": "crates/spt-daemon/src/relcache.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7876866Z "line": 490 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7876975Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7877076Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7877223Z "path": "crates/spt-daemon/src/relcache.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7877333Z "line": 616 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7877430Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7877538Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7877691Z "path": "crates/spt-daemon/tests/propagate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7877797Z "line": 277 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7877895Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7877994Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7878142Z "path": "crates/spt-net/src/net/update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7878246Z "line": 124 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7878350Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7878446Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7878579Z "path": "crates/spt-net/src/net/update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7878679Z "line": 200 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7878780Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7878889Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7879066Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7879176Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7879270Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7879367Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7879476Z "id": "REQ-UPD-2", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7879657Z "title": "All binaries signature-verified before handoff", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7879762Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7879867Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7879962Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7880053Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7880162Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7880263Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7880373Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7880481Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7880581Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7880690Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7880803Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7880907Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7881008Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7881150Z "path": "crates/spt-daemon/src/propagate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7881265Z "line": 343 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7881361Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7881465Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7881609Z "path": "crates/spt-daemon/src/propagate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7881723Z "line": 476 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7881822Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7881924Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7882066Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7882176Z "line": 29 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7882282Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7882381Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7882515Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7882620Z "line": 271 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7882734Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7882844Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7882973Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7883077Z "line": 288 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7883179Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7883288Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7883524Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7883640Z "line": 408 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7883743Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7883839Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7886644Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7886930Z "line": 558 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7887041Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7887145Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7887297Z "path": "crates/spt-daemon/src/update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7887408Z "line": 155 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7887503Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7887607Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7887704Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7887807Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7887917Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7888029Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7888126Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7888218Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7888329Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7888441Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7888540Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7888693Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7888801Z "line": 750 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7888905Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7889078Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7889234Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7889345Z "line": 811 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7889458Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7889559Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7889702Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7889807Z "line": 825 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7889907Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7890003Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7890131Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7890242Z "line": 841 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7890346Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7890441Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7890585Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7890693Z "line": 932 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7890794Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7890896Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7891037Z "path": "crates/spt-daemon/src/update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7891155Z "line": 414 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7891250Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7891353Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7891491Z "path": "crates/spt-daemon/src/update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7891593Z "line": 427 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7891692Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7891797Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7891954Z "path": "crates/spt-daemon/tests/propagate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7892058Z "line": 410 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7892165Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7892264Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7892373Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7892470Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7892579Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7892679Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7892794Z "id": "REQ-UPD-3", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7892994Z "title": "No endpoint process terminates/suspends during self-update", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7893104Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7893204Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7893309Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7893414Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7893519Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7893623Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7893729Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7893838Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7893946Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7894046Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7894152Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7894270Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7894370Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7894467Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7894613Z "path": "crates/spt-daemon/src/applyhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7894715Z "line": 40 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7894814Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7895014Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7895166Z "path": "crates/spt-daemon/src/applyhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7895271Z "line": 87 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7895378Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7895477Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7895625Z "path": "crates/spt-daemon/src/brain.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7895843Z "line": 1042 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7895949Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7896050Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7896196Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7896310Z "line": 1977 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7896405Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7896508Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7896646Z "path": "crates/spt-daemon/src/update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7896748Z "line": 26 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7896846Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7896942Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7897086Z "path": "crates/spt-daemon/src/update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7897194Z "line": 114 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7897301Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7897400Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7897542Z "path": "crates/spt-daemon/src/update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7897654Z "line": 246 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7897758Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7897857Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7897982Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7898087Z "line": 2442 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7898177Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7898278Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7898381Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7898487Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7898598Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7898701Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7898802Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7899020Z "path": "crates/spt/tests/brain_survive.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7899124Z "line": 58 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7899230Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7899333Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7899451Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7899552Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7899671Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7899775Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7899877Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7900033Z "path": "crates/spt-daemon/src/applyhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7900143Z "line": 532 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7900243Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7900343Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7900487Z "path": "crates/spt-daemon/src/applyhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7900591Z "line": 585 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7900691Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7900792Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7900930Z "path": "crates/spt-daemon/src/applyhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7901035Z "line": 653 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7901126Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7901221Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7901364Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7901470Z "line": 1102 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7901573Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7901672Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7901815Z "path": "crates/spt-daemon/src/update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7901918Z "line": 271 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7902022Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7902123Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7902252Z "path": "crates/spt-daemon/src/update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7902352Z "line": 295 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7902453Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7902557Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7902691Z "path": "crates/spt-daemon/src/update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7902796Z "line": 316 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7902900Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7903006Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7903134Z "path": "crates/spt-daemon/src/update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7903234Z "line": 332 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7903430Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7903525Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7903625Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7903731Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7903820Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7903916Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7904018Z "id": "REQ-UPD-4", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7904231Z "title": "Update gated on user confirmation by default; opt-in full-auto", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7904440Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7904539Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7904650Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7904746Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7904844Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7904940Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7905046Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7905145Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7905245Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7905346Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7905455Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7905560Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7905661Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7905808Z "path": "crates/spt-daemon/src/applyhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7905914Z "line": 41 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7906018Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7906123Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7906267Z "path": "crates/spt-daemon/src/applyhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7906380Z "line": 88 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7906480Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7906582Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7906723Z "path": "crates/spt-daemon/src/consent.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7906831Z "line": 23 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7906932Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7907031Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7907168Z "path": "crates/spt-daemon/src/consent.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7907269Z "line": 56 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7907373Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7907473Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7907607Z "path": "crates/spt-daemon/src/consent.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7907716Z "line": 77 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7907817Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7907922Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7908064Z "path": "crates/spt-daemon/src/lifecycle.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7908166Z "line": 236 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7908260Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7908360Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7908504Z "path": "crates/spt-daemon/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7908608Z "line": 108 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7908713Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7908810Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7909057Z "path": "crates/spt-store/src/info.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7909158Z "line": 270 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7909261Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7909377Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7909506Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7909613Z "line": 2441 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7909708Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7909814Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7909921Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7910020Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7910132Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7910245Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7910345Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7910442Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7910555Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7910664Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7910757Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7910907Z "path": "crates/spt-daemon/src/applyhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7911008Z "line": 581 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7911109Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7911208Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7911347Z "path": "crates/spt-daemon/src/applyhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7911456Z "line": 706 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7911556Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7911662Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7911795Z "path": "crates/spt-daemon/src/config.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7911895Z "line": 384 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7912100Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7912204Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7912347Z "path": "crates/spt-daemon/src/consent.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7912445Z "line": 102 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7912549Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7912640Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7912869Z "path": "crates/spt-daemon/src/consent.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7912965Z "line": 123 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7913070Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7913169Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7913304Z "path": "crates/spt-daemon/src/consent.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7913413Z "line": 142 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7913503Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7913605Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7913732Z "path": "crates/spt-store/src/info.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7913837Z "line": 582 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7913943Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7914042Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7914185Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7914286Z "line": 566 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7914385Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7914485Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7914615Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7914719Z "line": 8256 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7914825Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7914925Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7915024Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7915123Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7915215Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7915315Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7915423Z "id": "REQ-UPD-5", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7915582Z "title": "spt-core ripple-updates registered adapters", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7915691Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7915796Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7915902Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7915997Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7916101Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7916207Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7916316Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7916430Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7916531Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7916635Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7916745Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7916855Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7916945Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7917103Z "path": "crates/spt-daemon/src/adapter_update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7917213Z "line": 27 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7917311Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7917411Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7917558Z "path": "crates/spt-daemon/src/adapter_update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7917662Z "line": 87 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7917767Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7917868Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7918014Z "path": "crates/spt-daemon/src/adapter_update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7918115Z "line": 145 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7918220Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7918314Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7918464Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7918563Z "line": 492 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7918663Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7918764Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7918906Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7919083Z "line": 546 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7919183Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7919278Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7919379Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7919483Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7919597Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7919704Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7919807Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7919898Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7920014Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7920118Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7920217Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7920374Z "path": "crates/spt-daemon/src/adapter_update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7920477Z "line": 272 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7920672Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7920773Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7920929Z "path": "crates/spt-daemon/src/adapter_update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7921025Z "line": 286 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7921125Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7921321Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7921468Z "path": "crates/spt-daemon/src/adapter_update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7921568Z "line": 300 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7921669Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7921764Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7921917Z "path": "crates/spt-daemon/src/adapter_update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7922017Z "line": 314 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7922112Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7922213Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7922355Z "path": "crates/spt-daemon/src/adapter_update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7922460Z "line": 348 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7922561Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7922665Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7922811Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7922917Z "line": 1071 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7923015Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7923110Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7923210Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7923311Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7923415Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7923510Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7923625Z "id": "REQ-UPD-6", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7924494Z "title": "Platform-targeted update sets and debug rollout: signed multi-platform update metadata, recipient platform selection, channel-scoped monotonic counters, debug-channel opt-in via release-key overlay, local staging plus pull-based peer propagation, and maintainer-only convergence tooling (ADR-0016)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7924612Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7924722Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7924828Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7924931Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7925037Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7925138Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7925245Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7925346Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7925467Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7925570Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7925669Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7925832Z "path": "docs/DEBUG-CONVERGE-PLAN.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7925946Z "line": 3 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7926046Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7926137Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7926270Z "path": "docs/DEBUG-ROLLOUT.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7926366Z "line": 3 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7926471Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7926571Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7926743Z "path": "docs/adr/0016-platform-targeted-update-sets.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7926852Z "line": 3 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7926947Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7927049Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7927138Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7927243Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7927364Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7927477Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7927572Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7927721Z "path": "crates/spt-daemon/src/applyhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7927829Z "line": 76 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7927933Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7928038Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7928184Z "path": "crates/spt-daemon/src/applyhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7928283Z "line": 212 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7928395Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7928484Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7928632Z "path": "crates/spt-daemon/src/propagate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7928742Z "line": 69 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7928851Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7929043Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7929184Z "path": "crates/spt-daemon/src/propagate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7929295Z "line": 133 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7929557Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7929658Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7929805Z "path": "crates/spt-daemon/src/propagate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7929916Z "line": 243 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7930010Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7930111Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7930353Z "path": "crates/spt-daemon/src/propagate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7930458Z "line": 406 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7930560Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7930664Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7930805Z "path": "crates/spt-daemon/src/propagate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7930905Z "line": 534 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7931018Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7931122Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7931266Z "path": "crates/spt-daemon/src/propagate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7931371Z "line": 548 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7931465Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7931572Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7931723Z "path": "crates/spt-daemon/src/propagate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7931834Z "line": 603 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7931933Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7932024Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7932163Z "path": "crates/spt-daemon/src/propagate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7932276Z "line": 634 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7932381Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7932482Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7932628Z "path": "crates/spt-daemon/src/pump/update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7932739Z "line": 137 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7932840Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7932938Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7933078Z "path": "crates/spt-daemon/src/pump/update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7933193Z "line": 184 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7933296Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7933395Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7933543Z "path": "crates/spt-daemon/src/relcache.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7933655Z "line": 78 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7933751Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7933847Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7934004Z "path": "crates/spt-daemon/src/relcache.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7934105Z "line": 114 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7934210Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7934318Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7934458Z "path": "crates/spt-daemon/src/relcache.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7934566Z "line": 185 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7934671Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7934773Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7934914Z "path": "crates/spt-daemon/src/relcache.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7935025Z "line": 260 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7935125Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7935229Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7935369Z "path": "crates/spt-daemon/src/relcache.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7935472Z "line": 292 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7935577Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7935683Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7935825Z "path": "crates/spt-daemon/src/relcache.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7935940Z "line": 323 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7936037Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7936139Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7936282Z "path": "crates/spt-daemon/src/relcache.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7936392Z "line": 346 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7936497Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7936592Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7936731Z "path": "crates/spt-daemon/src/relcache.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7936830Z "line": 388 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7936931Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7937031Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7937164Z "path": "crates/spt-daemon/src/relcache.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7937274Z "line": 398 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7937369Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7937469Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7937613Z "path": "crates/spt-daemon/src/relcache.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7937798Z "line": 410 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7937904Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7937994Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7938137Z "path": "crates/spt-daemon/src/relcache.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7938243Z "line": 420 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7938346Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7938517Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7938659Z "path": "crates/spt-daemon/src/relcache.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7938763Z "line": 439 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7938863Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7939068Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7939207Z "path": "crates/spt-daemon/src/relcache.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7939312Z "line": 449 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7939416Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7939517Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7939664Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7939768Z "line": 94 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7939874Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7939979Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7940122Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7940223Z "line": 120 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7940327Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7940432Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7940566Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7940666Z "line": 135 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7940761Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7940867Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7941004Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7941110Z "line": 162 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7941219Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7941317Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7941452Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7941545Z "line": 174 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7941653Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7941754Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7941888Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7941997Z "line": 185 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7942098Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7942198Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7942326Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7942441Z "line": 451 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7942551Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7942650Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7942794Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7942894Z "line": 573 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7942999Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7943104Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7943242Z "path": "crates/spt-daemon/src/update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7943353Z "line": 171 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7943457Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7943561Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7943701Z "path": "crates/spt-net/src/net/update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7943805Z "line": 65 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7943899Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7944008Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7944154Z "path": "crates/spt-net/src/net/update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7944254Z "line": 71 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7944359Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7944465Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7944602Z "path": "crates/spt-net/src/net/update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7944712Z "line": 77 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7944817Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7944921Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7945050Z "path": "crates/xtask/src/main.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7945159Z "line": 778 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7945256Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7945365Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7945493Z "path": "crates/xtask/src/main.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7945599Z "line": 795 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7945694Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7945799Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7945924Z "path": "crates/xtask/src/main.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7946127Z "line": 838 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7946234Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7946333Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7946457Z "path": "crates/xtask/src/main.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7946568Z "line": 981 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7946672Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7946861Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7946991Z "path": "crates/xtask/src/main.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7947104Z "line": 1131 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7947205Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7947310Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7947414Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7947510Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7947615Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7947719Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7947830Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7947982Z "path": "crates/spt-daemon/tests/propagate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7948096Z "line": 569 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7948202Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7948301Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7948450Z "path": "docs/DEBUG-CONVERGE-PLAN.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7948554Z "line": 135 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7948659Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7948754Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7948865Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7949044Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7949149Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7949257Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7949370Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7949519Z "path": "crates/spt-daemon/src/applyhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7949624Z "line": 626 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7949724Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7949824Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7949971Z "path": "crates/spt-daemon/src/applyhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7950077Z "line": 675 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7950187Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7950286Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7950421Z "path": "crates/spt-daemon/src/propagate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7950535Z "line": 696 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7950639Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7950736Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7950878Z "path": "crates/spt-daemon/src/relcache.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7950982Z "line": 513 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7951093Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7951192Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7951336Z "path": "crates/spt-daemon/src/relcache.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7951445Z "line": 638 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7951545Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7951651Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7951784Z "path": "crates/spt-daemon/src/relcache.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7951887Z "line": 675 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7951987Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7952082Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7952228Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7952334Z "line": 947 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7952439Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7952542Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7952692Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7952796Z "line": 969 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7952890Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7953001Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7953125Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7953244Z "line": 986 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7953340Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7953430Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7953568Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7953679Z "line": 1001 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7953783Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7953883Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7954017Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7954126Z "line": 1027 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7954232Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7954341Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7954473Z "path": "crates/spt-daemon/src/update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7954686Z "line": 457 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7954785Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7954886Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7955039Z "path": "crates/spt-daemon/tests/propagate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7955152Z "line": 338 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7955349Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7955453Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7955582Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7955692Z "line": 10549 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7955796Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7955897Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7956021Z "path": "crates/xtask/src/main.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7956130Z "line": 1260 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7956231Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7956331Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7956470Z "path": "docs/DEBUG-CONVERGE-PLAN.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7956588Z "line": 130 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7956692Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7956794Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7956898Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7956998Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7957100Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7957199Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7957312Z "id": "REQ-UPD-7", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7959647Z "title": "Origin-source update bootstrap (`spt update fetch`): pull the latest signed release directly from the GitHub release origin (`SaberMage/spt-releases`) — the per-platform artifact + its `.release.json` SignedRelease metadata — and stage it through the EXISTING verify→stage pipeline (the same `plan_verified` gate: two-key signature + channel + monotonic rollback floor + SHA-256), after which the normal consent-notif / `spt update apply` flow is unchanged. Closes the peer-only-discovery gap (REQ-UPD-1): a first-in-fleet / isolated node can update with no peer to pull from. The signed-release anchor keeps the GitHub transport untrusted-but-verified.", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7959780Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7959893Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7960007Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7960113Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7960217Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7960312Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7960422Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7960531Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7960642Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7960742Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7960846Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7960952Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7961056Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7961189Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7961300Z "line": 2626 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7961399Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7961509Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7961611Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7961714Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7961824Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7961935Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7962029Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7962134Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7962240Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7962353Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7962461Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7962591Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7962693Z "line": 10525 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7962797Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7962913Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7963008Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7963112Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7963214Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7963314Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7963427Z "id": "REQ-UPD-8", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7966023Z "title": "Platform-safe `spt update fetch` + apply platform-guard (v0.3.1 cross-OS brick fix): `spt update fetch` stages the signed multi-platform `SignedUpdateSet` (`update-set.json` + every platform artifact it names), never a platform-blind single `SignedRelease`, so local apply selects `current_platform()` and P2P re-serve lets each peer select ITS own platform. Defense-in-depth: `apply_staged` REFUSES a staged single-release artifact unless it is platform-stamped for THIS node (an unstamped pre-v0.3.2 single, or a single stamped for another OS, fail-safe refuses — the guard that alone prevents the v0.3.1 brick where a Linux ELF was applied as `spt.exe`). UX: a friendly post-apply message (`Updated spt-core to vX.Y.Z.` + changelog URL) driven by an additive `product_version` metadata field, with a release-counter fallback when absent.", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7966361Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7966471Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7966567Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7969497Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7969642Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7969736Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7969846Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7969957Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7970060Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7970150Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7970255Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7970368Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7970467Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7970630Z "path": "crates/spt-daemon/src/applyhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7970744Z "line": 77 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7970844Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7970940Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7971096Z "path": "crates/spt-daemon/src/relcache.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7971207Z "line": 49 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7971302Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7971401Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7971546Z "path": "crates/spt-daemon/src/relcache.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7971660Z "line": 152 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7971754Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7971856Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7972003Z "path": "crates/spt-daemon/src/relcache.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7972112Z "line": 215 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7972218Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7972317Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7972461Z "path": "crates/spt-daemon/src/relcache.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7972575Z "line": 230 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7972684Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7972790Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7972932Z "path": "crates/spt-daemon/src/relcache.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7973040Z "line": 247 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7973136Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7973239Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7973372Z "path": "crates/spt-daemon/src/relcache.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7973483Z "line": 269 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7973587Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7973686Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7973821Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7973916Z "line": 66 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7974020Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7974122Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7974259Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7974365Z "line": 154 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7974474Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7974579Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7974703Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7974817Z "line": 2430 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7974922Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7975013Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7975137Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7975247Z "line": 2493 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7975348Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7975447Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7975574Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7975684Z "line": 2503 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7975783Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7975887Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7976011Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7976112Z "line": 2510 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7976211Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7976321Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7976450Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7976698Z "line": 2627 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7976803Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7976902Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7977036Z "path": "crates/xtask/src/main.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7977141Z "line": 480 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7977337Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7977441Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7977566Z "path": "crates/xtask/src/main.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7977671Z "line": 494 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7977775Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7977881Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7977981Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7978084Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7978205Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7978310Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7978418Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7978517Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7978624Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7978723Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7978828Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7979061Z "path": "crates/spt-daemon/src/applyhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7979171Z "line": 476 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7979277Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7979381Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7979525Z "path": "crates/spt-daemon/src/relcache.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7979634Z "line": 580 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7979733Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7979835Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7979958Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7980062Z "line": 10527 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7980159Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7980264Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7980386Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7980503Z "line": 10549 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7980606Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7980701Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7980801Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7980900Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7980994Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7981094Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7981199Z "id": "REQ-UPD-9", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7983894Z "title": "`gh_release` adapter [update] avenue (optional signing): an adapter declares `[update] avenue = \"gh_release\", repo = \"user/repo\"` (+ optional `asset`, default `adapter.spt`; + optional Ed25519 `signing_key`); spt-core's ripple compares the repo's LATEST GitHub release version against the installed adapter version and, when newer, auto-updates by fetching the release `.spt` archive (the REQ-INSTALL-9 `--release` fetch primitive) → verifies the `.spt` against `signing_key` if declared, else HTTPS+GitHub first-acquisition trust → re-extracts + re-registers the adapter root. Lets a harness adapter ship updates from its own GitHub releases with NO signing tooling or plugin coupling (removes the perri file_pull/delegated avenue blockers). Acquisition-trust mirrors `--release` + the installer first-fetch; does not alter spt-core self-update (REQ-UPD-1..8).", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7984023Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7984120Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7984218Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7984309Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7984410Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7984514Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7984620Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7984748Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7984857Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7984949Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7985062Z "path": "CONTEXT.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7985167Z "line": 93 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7985268Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7985373Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7985501Z "path": "docs/MANIFEST.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7985612Z "line": 285 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7985711Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7985811Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7985912Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7986017Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7986125Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7986324Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7986428Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7986595Z "path": "crates/spt-daemon/src/adapter_update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7986700Z "line": 128 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7986804Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7986901Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7987162Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7987262Z "line": 533 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7987367Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7987467Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7987615Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7987724Z "line": 459 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7987816Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7987920Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7988068Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7988174Z "line": 505 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7988278Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7988378Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7988532Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7988630Z "line": 928 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7988736Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7988837Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7989044Z "path": "crates/spt-runtime/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7989159Z "line": 302 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7989260Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7989373Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7989494Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7989603Z "line": 5675 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7989707Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7989808Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7989932Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7990037Z "line": 5720 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7990137Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7990237Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7990356Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7990466Z "line": 5857 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7990566Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7990666Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7990781Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7990880Z "line": 5878 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7990976Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7991082Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7991213Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7991317Z "line": 5901 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7991423Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7991512Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7991639Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7991741Z "line": 5928 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7991845Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7991945Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7992046Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7992146Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7992250Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7992361Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7992456Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7992550Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7992666Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7992775Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7992879Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7993042Z "path": "crates/spt-daemon/src/adapter_update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7993151Z "line": 259 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7993257Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7993357Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7993504Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7993610Z "line": 657 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7993710Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7993805Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7993949Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7994052Z "line": 1107 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7994156Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7994256Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7994384Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7994488Z "line": 7565 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7994588Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7994793Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7994899Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7994999Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7995098Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7995199Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7995308Z "id": "REQ-WHOAMI-1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7997049Z "title": "`spt whoami` is a thin ALIAS for `spt endpoint list` (full output: the SELF pin + the subnet roster) — the standalone bare-id command is dropped (the `id=$(spt whoami)` capture was never a real pattern: env vars don't persist between agent tool calls). The one new render: the `endpoint list` SELF pin carries the Self endpoint's authored `endpoint description` (info::read_info(...).resources) when present, inline after the liveness state. whoami stays a top-level hot-path verb (parse unchanged, REQ-MSG-9).", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7998700Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7999025Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7999224Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7999430Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7999628Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.7999834Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.8000034Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.8000243Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.8000478Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.8000697Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.8000901Z "path": "CONTEXT.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.8001159Z "line": 707 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.8001379Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.8001574Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.8001764Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.8001945Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.8002166Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.8002405Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.8002616Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.8002843Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.8003115Z "line": 3190 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.8003335Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.8003541Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.8003759Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.8004017Z "line": 3218 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.8004246Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.8004428Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.8004627Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.8004817Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.8005029Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.8005263Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.8005488Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.8005682Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.8005898Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.8006136Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.8006350Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.8006569Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.8006869Z "line": 7847 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.8007095Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.8007292Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.8007505Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.8007763Z "line": 7900 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.8007977Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.8008168Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.8008360Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.8008554Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.8008740Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.8008931Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.8009203Z "findings": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T07:19:09.8009393Z } traceability Quality audit (advisory) 2026-06-21T07:19:09.8037206Z ##[group]Run ./traceable-reqs lint || true traceability Quality audit (advisory) 2026-06-21T07:19:09.8037559Z ./traceable-reqs lint || true traceability Quality audit (advisory) 2026-06-21T07:19:09.8067827Z shell: /usr/bin/bash -e {0} traceability Quality audit (advisory) 2026-06-21T07:19:09.8068096Z ##[endgroup] traceability Quality audit (advisory) 2026-06-21T07:19:09.8310951Z Requirement quality findings (241); 275 requirements queued for agent review: traceability Quality audit (advisory) 2026-06-21T07:19:09.8312250Z [must] requirement_quality REQ-API-1 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8313475Z [must] requirement_quality REQ-API-4 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8314459Z [must] requirement_quality REQ-API-4 criterion=length — title is 67 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8315243Z [must] requirement_quality REQ-CLI-1 criterion=length — title is 47 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8316019Z [must] requirement_quality REQ-CLI-2 criterion=length — title is 37 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8316810Z [must] requirement_quality REQ-CLI-3 criterion=length — title is 37 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8317696Z [must] requirement_quality REQ-CLI-4 criterion=length — title is 89 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8319200Z [must] requirement_quality REQ-CLI-HELP-MARKDOWN criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8319900Z [must] requirement_quality REQ-CLI-HELP-MARKDOWN criterion=length — title is 156 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8320597Z [must] requirement_quality REQ-CLI-OUTPUT-MARKDOWN criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8321285Z [must] requirement_quality REQ-CLI-OUTPUT-MARKDOWN criterion=length — title is 199 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8321847Z [must] requirement_quality REQ-CONSENT-1 criterion=length — title is 41 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8322363Z [must] requirement_quality REQ-CONSENT-2 criterion=length — title is 37 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8322878Z [must] requirement_quality REQ-CONSENT-3 criterion=length — title is 82 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8323503Z [must] requirement_quality REQ-CONV-1 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8324130Z [must] requirement_quality REQ-CONV-1 criterion=length — title is 73 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8324648Z [must] requirement_quality REQ-CONV-2 criterion=length — title is 47 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8325259Z [must] requirement_quality REQ-DAEMON-5 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8325882Z [must] requirement_quality REQ-DAEMON-5 criterion=length — title is 64 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8326498Z [must] requirement_quality REQ-DAEMON-6 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8327621Z [must] requirement_quality REQ-DAEMON-6 criterion=length — title is 84 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8328557Z [must] requirement_quality REQ-DAEMON-7 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8329271Z [must] requirement_quality REQ-DAEMON-7 criterion=length — title is 62 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8329769Z [must] requirement_quality REQ-DAEMON-8 criterion=length — title is 44 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8330389Z [must] requirement_quality REQ-DAEMON-9 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8330980Z [must] requirement_quality REQ-DAEMON-9 criterion=length — title is 114 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8331606Z [must] requirement_quality REQ-ELEVATE-1 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8332238Z [must] requirement_quality REQ-ELEVATE-1 criterion=length — title is 121 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8333075Z [must] requirement_quality REQ-ENDPOINT-LIST-MERGE-LOCAL criterion=length — title is 95 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8333801Z [must] requirement_quality REQ-ENDPOINT-PURGE criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8334459Z [must] requirement_quality REQ-ENDPOINT-PURGE criterion=length — title is 220 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8335065Z [must] requirement_quality REQ-ENDPOINT-STOP-OFFLINE criterion=length — title is 58 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8335724Z [must] requirement_quality REQ-EP-6 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8336305Z [must] requirement_quality REQ-EP-6 criterion=length — title is 58 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8336795Z [must] requirement_quality REQ-EP-7 criterion=length — title is 68 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8337448Z [must] requirement_quality REQ-HAZARD-ATTACH-WEDGE criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8338158Z [must] requirement_quality REQ-HAZARD-ATTACH-WEDGE criterion=length — title is 244 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8339098Z [must] requirement_quality REQ-HAZARD-BIND-CWD-UNSET criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8339797Z [must] requirement_quality REQ-HAZARD-BIND-CWD-UNSET criterion=length — title is 130 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8340516Z [must] requirement_quality REQ-HAZARD-BRAIN-RESPAWN-PATH criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8341241Z [must] requirement_quality REQ-HAZARD-BRAIN-RESPAWN-PATH criterion=length — title is 119 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8342037Z [must] requirement_quality REQ-HAZARD-BRAIN-RESTART-LIFECYCLE-REHYDRATE criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8342868Z [must] requirement_quality REQ-HAZARD-BRAIN-RESTART-LIFECYCLE-REHYDRATE criterion=length — title is 125 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8343703Z [must] requirement_quality REQ-HAZARD-BRAIN-RESTART-PSYCHE-DUP criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8344474Z [must] requirement_quality REQ-HAZARD-BRAIN-RESTART-PSYCHE-DUP criterion=length — title is 199 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8345250Z [must] requirement_quality REQ-HAZARD-BROKER-PROCESS-ISOLATION criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8346307Z [must] requirement_quality REQ-HAZARD-BROKER-PROCESS-ISOLATION criterion=length — title is 114 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8347471Z [must] requirement_quality REQ-HAZARD-BROKER-QUIC-DEADLINE criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8348643Z [must] requirement_quality REQ-HAZARD-BROKER-QUIC-DEADLINE criterion=length — title is 162 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8350059Z [must] requirement_quality REQ-HAZARD-BROKER-SEED-WIRE-SKEW criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8351276Z [must] requirement_quality REQ-HAZARD-BROKER-SEED-WIRE-SKEW criterion=length — title is 193 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8352364Z [must] requirement_quality REQ-HAZARD-CONFLICT-BOTH-PRESERVED criterion=length — title is 29 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8353719Z [must] requirement_quality REQ-HAZARD-CONTROLLER-RETAKE-FLOOR criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8355025Z [must] requirement_quality REQ-HAZARD-CONTROLLER-RETAKE-FLOOR criterion=length — title is 184 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8356428Z [must] requirement_quality REQ-HAZARD-CONTROLLER-WRITER-REORDER criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8358165Z [must] requirement_quality REQ-HAZARD-CONTROLLER-WRITER-REORDER criterion=length — title is 643 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8359694Z [must] requirement_quality REQ-HAZARD-DAEMON-SCHED-NONBLOCKING criterion=length — title is 32 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8360985Z [must] requirement_quality REQ-HAZARD-DAEMON-STOP-BARRIER criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8362218Z [must] requirement_quality REQ-HAZARD-DAEMON-STOP-BARRIER criterion=length — title is 80 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8363525Z [must] requirement_quality REQ-HAZARD-DAEMON-STOP-REAP criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8364861Z [must] requirement_quality REQ-HAZARD-DAEMON-STOP-REAP criterion=length — title is 90 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8365957Z [must] requirement_quality REQ-HAZARD-DEFERRED-MANIFEST criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8366726Z [must] requirement_quality REQ-HAZARD-DEFERRED-MANIFEST criterion=length — title is 112 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8367395Z [must] requirement_quality REQ-HAZARD-DETACHED-PIPE-INHERIT criterion=length — title is 52 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8368171Z [must] requirement_quality REQ-HAZARD-DRIVEN-BY-IDLE-REMOTE-EVICT criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8369035Z [must] requirement_quality REQ-HAZARD-DRIVEN-BY-IDLE-REMOTE-EVICT criterion=length — title is 232 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8378774Z [must] requirement_quality REQ-HAZARD-DRIVEN-BY-SELFHEAL criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8379736Z [must] requirement_quality REQ-HAZARD-DRIVEN-BY-SELFHEAL criterion=length — title is 77 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8380514Z [must] requirement_quality REQ-HAZARD-EFFECT-JOURNAL-PTY-WEDGE criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8381305Z [must] requirement_quality REQ-HAZARD-EFFECT-JOURNAL-PTY-WEDGE criterion=length — title is 440 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8382072Z [must] requirement_quality REQ-HAZARD-ELEVATED-DAEMON-SPAWN criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8382818Z [must] requirement_quality REQ-HAZARD-ELEVATED-DAEMON-SPAWN criterion=length — title is 58 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8383580Z [must] requirement_quality REQ-HAZARD-ENDPOINT-RUN-ATTACH-OUTPUT criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8384345Z [must] requirement_quality REQ-HAZARD-ENDPOINT-RUN-ATTACH-OUTPUT criterion=length — title is 228 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8385062Z [must] requirement_quality REQ-HAZARD-ENV-SUBST criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8385753Z [must] requirement_quality REQ-HAZARD-ENV-SUBST criterion=length — title is 168 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8386462Z [must] requirement_quality REQ-HAZARD-ENVELOPE-CR-LINESAFE criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8387193Z [must] requirement_quality REQ-HAZARD-ENVELOPE-CR-LINESAFE criterion=length — title is 73 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8387933Z [must] requirement_quality REQ-HAZARD-ENVELOPE-PARSER-SAFE criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8388624Z [must] requirement_quality REQ-HAZARD-EPOCH-RESET criterion=length — title is 60 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8389426Z [must] requirement_quality REQ-HAZARD-GEN-START-NOW criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8390150Z [must] requirement_quality REQ-HAZARD-HOSTED-LIVENESS-RECONCILE criterion=length — title is 175 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8391189Z [must] requirement_quality REQ-HAZARD-INJECT-CONTROL-COEXIST criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8391931Z [must] requirement_quality REQ-HAZARD-INJECT-CONTROL-COEXIST criterion=length — title is 340 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8392684Z [must] requirement_quality REQ-HAZARD-INPUT-ACK-BACKPRESSURE criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8393421Z [must] requirement_quality REQ-HAZARD-INPUT-ACK-BACKPRESSURE criterion=length — title is 343 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8394046Z [must] requirement_quality REQ-HAZARD-INSTANT-UNDERFLOW criterion=length — title is 30 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8394703Z [must] requirement_quality REQ-HAZARD-LIVEHOST-BOOT-LIVENESS-GATE criterion=length — title is 122 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8395456Z [must] requirement_quality REQ-HAZARD-LIVEHOST-BOOT-RACE criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8396174Z [must] requirement_quality REQ-HAZARD-LIVEHOST-BOOT-RACE criterion=length — title is 158 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8396908Z [must] requirement_quality REQ-HAZARD-LIVEHOST-NONRESIDENT criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8397633Z [must] requirement_quality REQ-HAZARD-LIVEHOST-NONRESIDENT criterion=length — title is 171 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8398254Z [must] requirement_quality REQ-HAZARD-PAIR-RATE-LIMIT criterion=length — title is 37 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8398888Z [must] requirement_quality REQ-HAZARD-PAIR-SEED-ROTATION criterion=length — title is 33 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8399734Z [must] requirement_quality REQ-HAZARD-PAIR-TRANSCRIPT-BIND criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8400562Z [must] requirement_quality REQ-HAZARD-PSYCHE-OUTBOUND-PROXY criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8401310Z [must] requirement_quality REQ-HAZARD-PSYCHE-OUTBOUND-PROXY criterion=length — title is 27 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8402058Z [must] requirement_quality REQ-HAZARD-PTY-INPUT-WRITER-WEDGE criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8402792Z [must] requirement_quality REQ-HAZARD-PTY-INPUT-WRITER-WEDGE criterion=length — title is 287 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8403519Z [must] requirement_quality REQ-HAZARD-PUMP-IPC-DEADLINE criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8404215Z [must] requirement_quality REQ-HAZARD-PUMP-IPC-DEADLINE criterion=length — title is 38 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8404935Z [must] requirement_quality REQ-HAZARD-RC-ATTACH-FAILFAST criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8405650Z [must] requirement_quality REQ-HAZARD-RC-ATTACH-FAILFAST criterion=length — title is 163 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8406391Z [must] requirement_quality REQ-HAZARD-RC-ATTACH-ONLINE-RACE criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8407116Z [must] requirement_quality REQ-HAZARD-RC-ATTACH-ONLINE-RACE criterion=length — title is 184 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8407807Z [must] requirement_quality REQ-HAZARD-RC-EOF criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8408437Z [must] requirement_quality REQ-HAZARD-RC-EOF criterion=length — title is 208 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8409219Z [must] requirement_quality REQ-HAZARD-RC-INPUT-KEY-ENCODING criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8410102Z [must] requirement_quality REQ-HAZARD-RC-INPUT-KEY-ENCODING criterion=length — title is 222 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8410933Z [must] requirement_quality REQ-HAZARD-REGISTRY-GHOST-ROWS criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8411642Z [must] requirement_quality REQ-HAZARD-REGISTRY-GHOST-ROWS criterion=length — title is 66 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8412290Z [must] requirement_quality REQ-HAZARD-ROLLBACK-STATE-COMPAT criterion=length — title is 72 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8412999Z [must] requirement_quality REQ-HAZARD-ROSTER-GHOST criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8413680Z [must] requirement_quality REQ-HAZARD-ROSTER-GHOST criterion=length — title is 116 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8414355Z [must] requirement_quality REQ-HAZARD-SELF-ELEVATE criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8415028Z [must] requirement_quality REQ-HAZARD-SELF-ELEVATE criterion=length — title is 101 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8415633Z [must] requirement_quality REQ-HAZARD-SUDO-SECURE-PATH criterion=length — title is 43 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8416345Z [must] requirement_quality REQ-HAZARD-TEMPLATE-ARGV-FILL criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8417061Z [must] requirement_quality REQ-HAZARD-TEMPLATE-ARGV-FILL criterion=length — title is 166 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8417785Z [must] requirement_quality REQ-HAZARD-UNHOST-PSYCHE-REAP criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8418495Z [must] requirement_quality REQ-HAZARD-UNHOST-PSYCHE-REAP criterion=length — title is 161 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8419332Z [must] requirement_quality REQ-HAZARD-VIEWER-CLOSE-DETACH criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8420075Z [must] requirement_quality REQ-HAZARD-VIEWER-CLOSE-DETACH criterion=length — title is 437 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8420796Z [must] requirement_quality REQ-HAZARD-VIEWER-ISOLATION criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8421493Z [must] requirement_quality REQ-HAZARD-VIEWER-ISOLATION criterion=length — title is 118 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8422087Z [must] requirement_quality REQ-HAZARD-WAN-ORIGIN-AUTH criterion=length — title is 37 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8422821Z [must] requirement_quality REQ-HAZARD-WIN-PTY-PROGRAM-RESOLVE criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8423569Z [must] requirement_quality REQ-HAZARD-WIN-PTY-PROGRAM-RESOLVE criterion=length — title is 96 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8424222Z [must] requirement_quality REQ-HAZARD-WMI-DAEMON-WINDOW criterion=length — title is 101 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8424801Z [must] requirement_quality REQ-HOST-RUN-1 criterion=length — title is 88 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8425317Z [must] requirement_quality REQ-HOST-RUN-2 criterion=length — title is 97 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8425821Z [must] requirement_quality REQ-INST-15 criterion=length — title is 32 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8426437Z [must] requirement_quality REQ-INSTALL-10 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8427042Z [must] requirement_quality REQ-INSTALL-10 criterion=length — title is 58 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8427549Z [must] requirement_quality REQ-INSTALL-11 criterion=length — title is 78 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8428059Z [must] requirement_quality REQ-INSTALL-12 criterion=length — title is 116 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8428693Z [must] requirement_quality REQ-INSTALL-2 criterion=length — title is 2 word(s); want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8429519Z [must] requirement_quality REQ-INSTALL-6 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8430130Z [must] requirement_quality REQ-INSTALL-6 criterion=length — title is 56 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8430741Z [must] requirement_quality REQ-INSTALL-7 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8431336Z [must] requirement_quality REQ-INSTALL-7 criterion=length — title is 50 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8431856Z [must] requirement_quality REQ-INSTALL-8 criterion=length — title is 55 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8432471Z [must] requirement_quality REQ-INSTALL-9 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8433052Z [must] requirement_quality REQ-INSTALL-9 criterion=length — title is 62 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8433663Z [must] requirement_quality REQ-KICK-1 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8434264Z [must] requirement_quality REQ-KICK-1 criterion=length — title is 133 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8434882Z [must] requirement_quality REQ-MANIFEST-1 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8435480Z [must] requirement_quality REQ-MANIFEST-3 criterion=length — title is 26 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8436005Z [must] requirement_quality REQ-MANIFEST-4 criterion=length — title is 31 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8436526Z [must] requirement_quality REQ-MANIFEST-5 criterion=length — title is 132 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8437044Z [must] requirement_quality REQ-MANIFEST-6 criterion=length — title is 84 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8437923Z [must] requirement_quality REQ-MANIFEST-7 criterion=length — title is 120 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8438439Z [must] requirement_quality REQ-MANIFEST-8 criterion=length — title is 77 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8439025Z [must] requirement_quality REQ-MESH-1 criterion=length — title is 86 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8439669Z [must] requirement_quality REQ-MESH-2 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8440263Z [must] requirement_quality REQ-MESH-2 criterion=length — title is 120 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8440852Z [must] requirement_quality REQ-MESH-3 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8441434Z [must] requirement_quality REQ-MESH-3 criterion=length — title is 86 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8442016Z [must] requirement_quality REQ-MESH-4 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8442608Z [must] requirement_quality REQ-MESH-4 criterion=length — title is 99 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8443212Z [must] requirement_quality REQ-MESH-5 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8443793Z [must] requirement_quality REQ-MESH-5 criterion=length — title is 72 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8444384Z [must] requirement_quality REQ-MESH-6 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8444965Z [must] requirement_quality REQ-MESH-6 criterion=length — title is 56 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8445570Z [must] requirement_quality REQ-MIGRATE-1 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8446165Z [must] requirement_quality REQ-MSG-4 criterion=length — title is 31 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8446655Z [must] requirement_quality REQ-MSG-5 criterion=length — title is 38 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8447261Z [must] requirement_quality REQ-MSG-6 criterion=length — title is 65 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8447987Z [must] requirement_quality REQ-MSG-ENVELOPE criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8448627Z [must] requirement_quality REQ-MSG-ENVELOPE criterion=length — title is 153 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8449428Z [must] requirement_quality REQ-MSG-IDLE-TRANSLATION-BINARY criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8450171Z [must] requirement_quality REQ-MSG-IDLE-TRANSLATION-BINARY criterion=length — title is 221 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8450852Z [must] requirement_quality REQ-PAIR-8 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8451445Z [must] requirement_quality REQ-PAIR-8 criterion=length — title is 67 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8452065Z [must] requirement_quality REQ-PICKER-1 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8452676Z [must] requirement_quality REQ-PICKER-1 criterion=length — title is 156 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8453206Z [must] requirement_quality REQ-PICKER-2 criterion=length — title is 77 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8453724Z [must] requirement_quality REQ-PICKER-3 criterion=length — title is 120 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8454329Z [must] requirement_quality REQ-PICKER-4 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8454925Z [must] requirement_quality REQ-PICKER-4 criterion=length — title is 84 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8455530Z [must] requirement_quality REQ-PICKER-5 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8456120Z [must] requirement_quality REQ-PICKER-5 criterion=length — title is 147 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8456816Z [must] requirement_quality REQ-PICKER-ADAPTER-DESCRIPTION criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8457564Z [must] requirement_quality REQ-PICKER-ADAPTER-DESCRIPTION criterion=length — title is 64 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8458184Z [must] requirement_quality REQ-PICKER-HISTORY-FRESH criterion=length — title is 51 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8458817Z [must] requirement_quality REQ-PICKER-HISTORY-FRESH criterion=tbd-todo — title contains placeholder marker 'TBD' traceability Quality audit (advisory) 2026-06-21T07:19:09.8459550Z [must] requirement_quality REQ-PICKER-ONLINE-ACTION criterion=length — title is 74 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8460179Z [must] requirement_quality REQ-PICKER-ONLINE-ACTION criterion=tbd-todo — title contains placeholder marker 'TBD' traceability Quality audit (advisory) 2026-06-21T07:19:09.8460889Z [must] requirement_quality REQ-PICKER-UX-V013 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8461526Z [must] requirement_quality REQ-PICKER-UX-V013 criterion=length — title is 86 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8462149Z [must] requirement_quality REQ-PRES-1 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8462741Z [must] requirement_quality REQ-PRES-1 criterion=length — title is 48 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8463231Z [must] requirement_quality REQ-RC-1 criterion=length — title is 94 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8463865Z [must] requirement_quality REQ-RC-KEY-VT-TRANSLATE criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8464546Z [must] requirement_quality REQ-RC-KEY-VT-TRANSLATE criterion=length — title is 249 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8465208Z [must] requirement_quality REQ-RC-MOUSE-FORWARD criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8465978Z [must] requirement_quality REQ-RC-MOUSE-FORWARD criterion=length — title is 218 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8466755Z [must] requirement_quality REQ-RC-WIN-PASTE criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8467376Z [must] requirement_quality REQ-RC-WIN-PASTE criterion=length — title is 226 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8468000Z [must] requirement_quality REQ-RCVIEW-1 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8468606Z [must] requirement_quality REQ-RCVIEW-1 criterion=length — title is 197 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8469367Z [must] requirement_quality REQ-READY-AGENT-RESUME criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8470042Z [must] requirement_quality REQ-READY-AGENT-RESUME criterion=length — title is 165 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8470700Z [must] requirement_quality REQ-RUN-PICKER criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8471330Z [must] requirement_quality REQ-RUN-PICKER criterion=length — title is 203 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8471962Z [must] requirement_quality REQ-RUN-SHORTCUT criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8472589Z [must] requirement_quality REQ-RUN-SHORTCUT criterion=length — title is 226 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8473129Z [must] requirement_quality REQ-SEAM-SPAWN criterion=length — title is 2 word(s); want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8473777Z [must] requirement_quality REQ-SEND-SPT-HOSTED criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8474426Z [must] requirement_quality REQ-SEND-SPT-HOSTED criterion=length — title is 169 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8475125Z [must] requirement_quality REQ-SESSION-RESUME-TEMPLATE criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8475841Z [must] requirement_quality REQ-SESSION-RESUME-TEMPLATE criterion=length — title is 287 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8476417Z [must] requirement_quality REQ-SHELL-1 criterion=length — title is 36 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8476923Z [must] requirement_quality REQ-SHELL-2 criterion=length — title is 49 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8477425Z [must] requirement_quality REQ-SHELL-3 criterion=length — title is 80 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8478035Z [must] requirement_quality REQ-SHELL-4 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8478645Z [must] requirement_quality REQ-SHELL-4 criterion=length — title is 84 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8479256Z [must] requirement_quality REQ-SHELL-5 criterion=length — title is 49 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8479856Z [must] requirement_quality REQ-START-5 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8480469Z [must] requirement_quality REQ-START-5 criterion=length — title is 129 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8480970Z [must] requirement_quality REQ-STORE-1 criterion=length — title is 34 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8481470Z [must] requirement_quality REQ-SUBNET-5 criterion=length — title is 52 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8482084Z [must] requirement_quality REQ-SUBNET-6 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8482679Z [must] requirement_quality REQ-SUBNET-6 criterion=length — title is 38 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8483284Z [must] requirement_quality REQ-SUBNET-7 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8483885Z [must] requirement_quality REQ-SUBNET-7 criterion=length — title is 75 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8484496Z [must] requirement_quality REQ-SUBNET-8 criterion=length — title is 53 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8485188Z [must] requirement_quality REQ-TERM-5 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8485791Z [must] requirement_quality REQ-TERM-5 criterion=length — title is 71 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8486382Z [must] requirement_quality REQ-TERM-6 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8486959Z [must] requirement_quality REQ-TERM-6 criterion=length — title is 53 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8487559Z [must] requirement_quality REQ-TERM-7 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8488143Z [must] requirement_quality REQ-TERM-7 criterion=length — title is 55 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8488749Z [must] requirement_quality REQ-UPD-6 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8489435Z [must] requirement_quality REQ-UPD-6 criterion=length — title is 32 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8490040Z [must] requirement_quality REQ-UPD-7 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8490621Z [must] requirement_quality REQ-UPD-7 criterion=length — title is 88 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8491201Z [must] requirement_quality REQ-UPD-8 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T07:19:09.8491782Z [must] requirement_quality REQ-UPD-8 criterion=length — title is 115 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8492288Z [must] requirement_quality REQ-UPD-9 criterion=length — title is 110 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8492780Z [must] requirement_quality REQ-WHOAMI-1 criterion=length — title is 76 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T07:19:09.8493073Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8493178Z # Requirement quality review traceability Quality audit (advisory) 2026-06-21T07:19:09.8493328Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8493520Z You are reviewing 275 requirement(s) from `traceable-reqs.toml` against a quality traceability Quality audit (advisory) 2026-06-21T07:19:09.8493958Z rubric. Deterministic checks (length, contains-and, tbd-todo, duplicate-titles, traceability Quality audit (advisory) 2026-06-21T07:19:09.8494388Z trailing-etc) have already run and surfaced as `requirement_quality` findings on traceability Quality audit (advisory) 2026-06-21T07:19:09.8494770Z this command's output. Your task is the rubric items below. traceability Quality audit (advisory) 2026-06-21T07:19:09.8494979Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8495065Z ## Rubric traceability Quality audit (advisory) 2026-06-21T07:19:09.8495174Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8495428Z - **singular** — describes one capability; no smuggled "and"/"or" across distinct actions. traceability Quality audit (advisory) 2026-06-21T07:19:09.8495931Z - **verifiable** — states an observable behavior a test or reviewer could confirm. traceability Quality audit (advisory) 2026-06-21T07:19:09.8496385Z - **atomic** — cannot be split into two requirements without losing meaning. traceability Quality audit (advisory) 2026-06-21T07:19:09.8496756Z - **active-voice** — clear subject and active verb. traceability Quality audit (advisory) 2026-06-21T07:19:09.8496966Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8497204Z If a criterion is borderline or doesn't apply, abstain — only emit findings for traceability Quality audit (advisory) 2026-06-21T07:19:09.8497543Z clear concerns. traceability Quality audit (advisory) 2026-06-21T07:19:09.8497663Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8497757Z ## Requirements traceability Quality audit (advisory) 2026-06-21T07:19:09.8497876Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8497964Z ### REQ-ARCH-1 traceability Quality audit (advisory) 2026-06-21T07:19:09.8498161Z - Title: Many small acyclically-layered crates traceability Quality audit (advisory) 2026-06-21T07:19:09.8498412Z - Required stages: impl traceability Quality audit (advisory) 2026-06-21T07:19:09.8498555Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8498642Z ### REQ-ARCH-2 traceability Quality audit (advisory) 2026-06-21T07:19:09.8498884Z - Title: Public SDK surface is spt-proto, spt-runtime, spt-msg traceability Quality audit (advisory) 2026-06-21T07:19:09.8499304Z - Required stages: impl traceability Quality audit (advisory) 2026-06-21T07:19:09.8499437Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8499534Z ### REQ-ARCH-3 traceability Quality audit (advisory) 2026-06-21T07:19:09.8499804Z - Title: Wire-protocol version independent of crate semver, N-1 compat window traceability Quality audit (advisory) 2026-06-21T07:19:09.8500134Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8500291Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8500376Z ### REQ-ARCH-4 traceability Quality audit (advisory) 2026-06-21T07:19:09.8500619Z - Title: Copy-verbatim the commodity layer from the sister project traceability Quality audit (advisory) 2026-06-21T07:19:09.8501042Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8501186Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8501379Z ### REQ-DAEMON-1 traceability Quality audit (advisory) 2026-06-21T07:19:09.8501623Z - Title: One per-machine spt-daemon owning all per-machine state traceability Quality audit (advisory) 2026-06-21T07:19:09.8501914Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8502081Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8502166Z ### REQ-DAEMON-2 traceability Quality audit (advisory) 2026-06-21T07:19:09.8502381Z - Title: Broker/brain split for seamless self-update traceability Quality audit (advisory) 2026-06-21T07:19:09.8502642Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8502806Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8502895Z ### REQ-DAEMON-3 traceability Quality audit (advisory) 2026-06-21T07:19:09.8503125Z - Title: Any api invocation auto-starts the daemon if absent traceability Quality audit (advisory) 2026-06-21T07:19:09.8503407Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8503562Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8503657Z ### REQ-DAEMON-4 traceability Quality audit (advisory) 2026-06-21T07:19:09.8503846Z - Title: Honor every KNOWN-HAZARDS invariant traceability Quality audit (advisory) 2026-06-21T07:19:09.8504085Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8504236Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8504333Z ### REQ-STORE-1 traceability Quality audit (advisory) 2026-06-21T07:19:09.8505243Z - Title: spt-store::BranchStore (git branch as versioned KV; commit=checkpoint/tip=resume, atomic multi-key, merge-native sync) is the substrate for coarse/durable/audited state (context, registry snapshot+distribution, daemon checkpoint); hot paths (B5 fsync journal) + indexed queries (SQLite spool) excluded (ADR-0011) traceability Quality audit (advisory) 2026-06-21T07:19:09.8506212Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8506364Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8506458Z ### REQ-MANIFEST-1 traceability Quality audit (advisory) 2026-06-21T07:19:09.8506716Z - Title: Per-adapter manifest with adapter_name and min_spt_core_version traceability Quality audit (advisory) 2026-06-21T07:19:09.8507026Z - Required stages: doc, impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8507183Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8507265Z ### REQ-MANIFEST-2 traceability Quality audit (advisory) 2026-06-21T07:19:09.8507837Z - Title: Adapter profiles — sparse leaf-replace overlays (shipped + local), composite : addressing, shadow-refusal, tighten-only consent floors traceability Quality audit (advisory) 2026-06-21T07:19:09.8508374Z - Required stages: doc, impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8508534Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8508622Z ### REQ-MANIFEST-3 traceability Quality audit (advisory) 2026-06-21T07:19:09.8509411Z - Title: Adapter strings — [strings] KV tree, dot-path get-string resolving through the profile leaf-replace overlay, set-string editing a local profile's [strings] only; data-only (nothing executes a string) traceability Quality audit (advisory) 2026-06-21T07:19:09.8510065Z - Required stages: doc, impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8510227Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8510316Z ### REQ-MANIFEST-4 traceability Quality audit (advisory) 2026-06-21T07:19:09.8511067Z - Title: Keyword hints — [[hints]] {keywords (literal/regex), text}; spt api hint --session emits at most one matched hint per message, once per session (seen-set), declaration-order first match; profiles overlay [[hints]] by leaf-replace traceability Quality audit (advisory) 2026-06-21T07:19:09.8511760Z - Required stages: doc, impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8511906Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8512001Z ### REQ-MANIFEST-5 traceability Quality audit (advisory) 2026-06-21T07:19:09.8514907Z - Title: File-backed adapter [strings] (M12-W3-T3.1): a [strings] dot-path value MAY be an inline-table FILE POINTER `key = { file = "rel/path" }` resolved to the file's contents at get-string time, keeping large bodies (skill-instructions, hint text) out of the manifest. A value-position table with a `file` key IS the pointer form (reserved — cannot double as data). Per-adapter aux storage `adapters//strings/`; pointers resolve relative to it with CONTAINMENT (reject `..`/absolute escaping the dir). UPDATE-SAFETY: a LOCAL profile's file-pointers resolve relative to the user-owned local-profile dir (NOT adapter-shipped strings/, which adapter updates overwrite), or the local profile inlines. Validate-at-register (fail-fast on a bad/escaping/missing pointer) + LAZY read at get-string (live file edits reflect, no re-register) + skip-diagnostics on missing-at-read (no hard-crash, mirrors [digest]). Rides the same leaf-replace profile overlay as the rest of [strings]. traceability Quality audit (advisory) 2026-06-21T07:19:09.8517466Z - Required stages: doc, impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8517619Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8517699Z ### REQ-MANIFEST-6 traceability Quality audit (advisory) 2026-06-21T07:19:09.8520043Z - Title: Cross-adapter fallback target addressing (M12-W3-T3.2): a cross-adapter fallback target is addressed as `:` (not just a bare adapter_name), resolved through the one composite-addressing resolver (registry::resolve_option) at every adapter-option read site so a fallback may select a shipped/local profile (e.g. a `ccs` profile). CONTEXT.md §cross-adapter-fallback reconciled ("ccs is a profile; cross-adapter fallback may target :"). Contract-only this milestone: the node-wide fallback SETTING + its rate-limit invocation are deferred to the consuming milestone (the runtime path does not exist yet); this REQ guarantees the ADDRESSING resolves. traceability Quality audit (advisory) 2026-06-21T07:19:09.8522013Z - Required stages: doc, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8522163Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8522259Z ### REQ-MANIFEST-7 traceability Quality audit (advisory) 2026-06-21T07:19:09.8525310Z - Title: Adapter-declared shortcut basename (M12-W2 follow-on): an optional `[adapter] shortcut_basename` manifest field names the basename the `spt endpoint run` picker bakes into the generated `-` launcher shortcut (REQ-RUN-SHORTCUT). Absent ⇒ the harness-agnostic default `spt` (→ `spt-`); an adapter sets it to brand its shortcuts (claude-spt → `cc` → `cc-`), so the Claude-Code-ness lives in the PUBLISHED adapter manifest, never hardcoded in spt-core. The picker reads it from the RESOLVED manifest of the selected adapter (registry::resolve_option), falling back to `spt` when absent/empty/unresolvable. Additive + N-1-safe (serde-default Option, omitted from serialization when absent; old manifests parse clean); manifest.schema.json regenerated from the derive (ADR-0001, CI drift-gated). Documented in docs/MANIFEST.md `[adapter]` section + the claude-spt worked example — the adapter-author contract perri builds spt-claude-code against. traceability Quality audit (advisory) 2026-06-21T07:19:09.8527845Z - Required stages: doc, impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8528003Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8528094Z ### REQ-MANIFEST-8 traceability Quality audit (advisory) 2026-06-21T07:19:09.8530421Z - Title: [adapter] host_binaries declares the harness executable basenames a kind="harness" adapter hosts agents inside (e.g. host_binaries = ["claude"]); bind-time pid→exe-basename match (case-insensitive, .exe-stripped) over the seed's parent_pid selects the candidate adapter set; zero matches → a friendly error naming the binary + the --adapter escape hatch. Additive + N-1-safe: optional Vec, #[serde(default, skip_serializing_if = "Vec::is_empty")] (omitted-serialized like shortcut_basename, old manifests parse clean); manifest.schema.json regenerated from the derive (ADR-0001, CI drift-gated). The match-key for ADR-0021 adapter-agnostic bind-time resolution. (v0.9.0) traceability Quality audit (advisory) 2026-06-21T07:19:09.8532300Z - Required stages: doc, impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8532468Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8532564Z ### REQ-SEAM-SPAWN traceability Quality audit (advisory) 2026-06-21T07:19:09.8532756Z - Title: spawn-session seam traceability Quality audit (advisory) 2026-06-21T07:19:09.8532964Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8533117Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8533213Z ### REQ-SEAM-POSTSPAWN traceability Quality audit (advisory) 2026-06-21T07:19:09.8533441Z - Title: post-spawn / api bind seam with boot nonce traceability Quality audit (advisory) 2026-06-21T07:19:09.8533708Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8533856Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8533956Z ### REQ-SEAM-PSYCHE traceability Quality audit (advisory) 2026-06-21T07:19:09.8534176Z - Title: spawn-psyche seam (fresh + resume templates) traceability Quality audit (advisory) 2026-06-21T07:19:09.8534449Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8534595Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8534696Z ### REQ-SEAM-HISTORY traceability Quality audit (advisory) 2026-06-21T07:19:09.8534958Z - Title: History subsystem (fetcher / locate-normalize / native store) traceability Quality audit (advisory) 2026-06-21T07:19:09.8535271Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8535428Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8535517Z ### REQ-SEAM-ACTIVITY traceability Quality audit (advisory) 2026-06-21T07:19:09.8535770Z - Title: Activity/idle reported via api sentinels, not PTY quiescence traceability Quality audit (advisory) 2026-06-21T07:19:09.8536080Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8536241Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8536323Z ### REQ-SEAM-INJECT traceability Quality audit (advisory) 2026-06-21T07:19:09.8536566Z - Title: inject-input methods configurable per activity-state traceability Quality audit (advisory) 2026-06-21T07:19:09.8536856Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8537110Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8537200Z ### REQ-SEAM-RESUME traceability Quality audit (advisory) 2026-06-21T07:19:09.8537568Z - Title: resume-session seam (fresh-with-preload / continue-existing) traceability Quality audit (advisory) 2026-06-21T07:19:09.8537878Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8538030Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8538133Z ### REQ-SEAM-CAPABILITY traceability Quality audit (advisory) 2026-06-21T07:19:09.8538368Z - Title: Hostable endpoint-types capability declaration traceability Quality audit (advisory) 2026-06-21T07:19:09.8538645Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8538786Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8538883Z ### REQ-SEAM-UPDATE traceability Quality audit (advisory) 2026-06-21T07:19:09.8539278Z - Title: Adapter-update avenue (file-pull / delegated command) traceability Quality audit (advisory) 2026-06-21T07:19:09.8539574Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8539717Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8539817Z ### REQ-API-1 traceability Quality audit (advisory) 2026-06-21T07:19:09.8540060Z - Title: api prefix and adapter_name on every machinery invocation traceability Quality audit (advisory) 2026-06-21T07:19:09.8540354Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8540503Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8540583Z ### REQ-API-2 traceability Quality audit (advisory) 2026-06-21T07:19:09.8540873Z - Title: The api subcommand surface (bind/listen/poll/state/worker/boundary/...) traceability Quality audit (advisory) 2026-06-21T07:19:09.8541225Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8541386Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8541473Z ### REQ-API-3 traceability Quality audit (advisory) 2026-06-21T07:19:09.8541691Z - Title: commune/signoff are file-drops, not commands traceability Quality audit (advisory) 2026-06-21T07:19:09.8541964Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8542117Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8542198Z ### REQ-API-4 traceability Quality audit (advisory) 2026-06-21T07:19:09.8543730Z - Title: api resolves the adapter manifest (+ profile + install dir) from `--adapter name:profile` via the registry when `--manifest` is omitted; `--manifest` becomes an optional OVERRIDE (unregistered / local-dev manifests). Removes the require-both-flags redundancy — a registered adapter's live bringup / digest / capability needs only `--adapter` — and yields the precise install dir (the record's source_dir) rather than the --manifest parent, closing the copy-mode psyche-binary edge (v0.8.0) traceability Quality audit (advisory) 2026-06-21T07:19:09.8545116Z - Required stages: doc, impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8545276Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8545361Z ### REQ-START-1 traceability Quality audit (advisory) 2026-06-21T07:19:09.8545629Z - Title: Adapters never resolve SPT_HOME; binary on PATH; api bridging only traceability Quality audit (advisory) 2026-06-21T07:19:09.8545960Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8546110Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8546195Z ### REQ-START-2 traceability Quality audit (advisory) 2026-06-21T07:19:09.8546420Z - Title: Harness-hosted startup: api seed then listen traceability Quality audit (advisory) 2026-06-21T07:19:09.8546688Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8546839Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8546936Z ### REQ-START-3 traceability Quality audit (advisory) 2026-06-21T07:19:09.8547174Z - Title: spt-hosted startup: spawn-session then api bind (no file) traceability Quality audit (advisory) 2026-06-21T07:19:09.8547478Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8547631Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8547722Z ### REQ-START-4 traceability Quality audit (advisory) 2026-06-21T07:19:09.8547937Z - Title: Adapter-injected env aliases (SPT/OWL/LIVE) traceability Quality audit (advisory) 2026-06-21T07:19:09.8548210Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8548361Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8548458Z ### REQ-START-5 traceability Quality audit (advisory) 2026-06-21T07:19:09.8551380Z - Title: Adapter-agnostic harness-hosted seed + bind-time adapter/profile resolution (ADR-0021): `api seed` carries only parent_pid + session_id (+ optional cwd), no --adapter — a pure "a harness session exists at this pid" record; --adapter becomes an OPTIONAL override across the whole api group (an explicit name[:profile] for adapter dev, never required). Omitted, listen/poll resolve the owning adapter/profile AT BIND as a pure read against the live registry — never a seed-time snapshot that can drift: seed parent_pid → exe basename → host_binaries candidate set (REQ-MANIFEST-8) → active-profile pointer (REQ-INSTALL-12) primary, else greatest-registered_at_ms candidate base profile (name-asc tie) → friendly zero-match error. Covers BOTH LiveAgent (listen) and ReadyAgent (poll) bringup. Restores legacy parity: `$LIVE start ` → `$SPT listen ` with no mandatory --adapter, one generic SessionStart hook per harness binary. (v0.9.0) traceability Quality audit (advisory) 2026-06-21T07:19:09.8553863Z - Required stages: doc, impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8554151Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8554247Z ### REQ-EP-1 traceability Quality audit (advisory) 2026-06-21T07:19:09.8554451Z - Title: Day-one endpoint types; open type system traceability Quality audit (advisory) 2026-06-21T07:19:09.8554809Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8554958Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8555048Z ### REQ-EP-2 traceability Quality audit (advisory) 2026-06-21T07:19:09.8555282Z - Title: Agent endpoints vs Shells distinction in the type model traceability Quality audit (advisory) 2026-06-21T07:19:09.8555578Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8555725Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8555811Z ### REQ-EP-3 traceability Quality audit (advisory) 2026-06-21T07:19:09.8556063Z - Title: Messaging payloads carry typed operation commands + file blobs traceability Quality audit (advisory) 2026-06-21T07:19:09.8556377Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8556525Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8556619Z ### REQ-EP-4 traceability Quality audit (advisory) 2026-06-21T07:19:09.8556833Z - Title: PresenceChannel broker endpoint (seam day-one) traceability Quality audit (advisory) 2026-06-21T07:19:09.8557095Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8557238Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8557328Z ### REQ-EP-5 traceability Quality audit (advisory) 2026-06-21T07:19:09.8558034Z - Title: Concrete shell instantiation model: spawn-mints-instance (vs relink/online), registered-on-node permission + broadcast-is-discovery, per-shell require_approval gate, max_instances_per_owner + over_cap, instance aliasing, discovery scope traceability Quality audit (advisory) 2026-06-21T07:19:09.8558817Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8559046Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8559132Z ### REQ-EP-6 traceability Quality audit (advisory) 2026-06-21T07:19:09.8560623Z - Title: Gateway type acceptance: a Gateway-typed perch binds (api bind --type, open type system — un-hardcode the live_agent default), advertises/addressable like any endpoint, owns shells (owner validation not agent-family-gated), subscribes to digests, and is the user-msg identity gate's user-backed origin (REQ-MSG-5); in-tree mock-gateway fixture (R-DOCS-2 pattern, no downstream adapter code). Cross-node WAN Gateway-origin (registry endpoint_type trust) tracked by REQ-MSG-6 traceability Quality audit (advisory) 2026-06-21T07:19:09.8561959Z - Required stages: doc, impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8562121Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8562212Z ### REQ-EP-7 traceability Quality audit (advisory) 2026-06-21T07:19:09.8563891Z - Title: Durable live-role.md: a per-agent broad-purpose statement in tracked/agents// beside live-context.md (replicates with the mind on the same a- branch); renders FIRST at start-transition context injection (role -> live-context -> project-context); SOLE writer `spt endpoint role --overwrite ` — mechanical no-automated-writer guarantee (echo-commune ingest / signoff / Psyche reconcile structurally exclude it). The user-backed-origin hard gate on the writer is a deferred later tightening (rides the user-msg identity plumbing) traceability Quality audit (advisory) 2026-06-21T07:19:09.8565383Z - Required stages: doc, impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8565537Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8565622Z ### REQ-INST-1 traceability Quality audit (advisory) 2026-06-21T07:19:09.8565856Z - Title: endpoint ID vs instance split (adapter-agnostic ID) traceability Quality audit (advisory) 2026-06-21T07:19:09.8566167Z - Required stages: traceability Quality audit (advisory) 2026-06-21T07:19:09.8566280Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8566396Z ### REQ-INST-2 traceability Quality audit (advisory) 2026-06-21T07:19:09.8566605Z - Title: Per-node files, synced Psyche mind traceability Quality audit (advisory) 2026-06-21T07:19:09.8566848Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8571716Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8571832Z ### REQ-INST-3 traceability Quality audit (advisory) 2026-06-21T07:19:09.8572120Z - Title: Dormant (warm) / suspended (cold) resting states traceability Quality audit (advisory) 2026-06-21T07:19:09.8572404Z - Required stages: doc, impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8572572Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8572662Z ### REQ-INST-4 traceability Quality audit (advisory) 2026-06-21T07:19:09.8572915Z - Title: active to dormant/suspended fires a transition echo commune traceability Quality audit (advisory) 2026-06-21T07:19:09.8573225Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8573367Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8573459Z ### REQ-INST-5 traceability Quality audit (advisory) 2026-06-21T07:19:09.8573706Z - Title: Two-tier context sync (live to all, project to same-project) traceability Quality audit (advisory) 2026-06-21T07:19:09.8574007Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8574155Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8574235Z ### REQ-INST-6 traceability Quality audit (advisory) 2026-06-21T07:19:09.8574498Z - Title: Deferred messages not delivered to dormant/suspended instances traceability Quality audit (advisory) 2026-06-21T07:19:09.8574813Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8574963Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8575064Z ### REQ-INST-7 traceability Quality audit (advisory) 2026-06-21T07:19:09.8575425Z - Title: Subnet registry + bare-id resolution policy traceability Quality audit (advisory) 2026-06-21T07:19:09.8575697Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8575938Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8576017Z ### REQ-INST-8 traceability Quality audit (advisory) 2026-06-21T07:19:09.8576253Z - Title: Remote-control mode distinct from local operation traceability Quality audit (advisory) 2026-06-21T07:19:09.8576535Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8576693Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8576783Z ### REQ-INST-9 traceability Quality audit (advisory) 2026-06-21T07:19:09.8577037Z - Title: Multi-subnet membership (same-user N subnets; cross-user seam) traceability Quality audit (advisory) 2026-06-21T07:19:09.8577356Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8577507Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8577588Z ### REQ-INST-10 traceability Quality audit (advisory) 2026-06-21T07:19:09.8577867Z - Title: Qualified addressing [subnet:]id[@node] + ambiguity forces qualification traceability Quality audit (advisory) 2026-06-21T07:19:09.8578205Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8578353Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8578448Z ### REQ-INST-11 traceability Quality audit (advisory) 2026-06-21T07:19:09.8578731Z - Title: spt rename rippled to all instances (collision-checked, 6.5-reconciled) traceability Quality audit (advisory) 2026-06-21T07:19:09.8579183Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8579403Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8579503Z ### REQ-INST-12 traceability Quality audit (advisory) 2026-06-21T07:19:09.8579852Z - Title: Endpoint visibility per-(endpoint,subnet): excluded semantics, OR-of-defaults + override, gates sync traceability Quality audit (advisory) 2026-06-21T07:19:09.8580252Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8580402Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8580493Z ### REQ-INST-13 traceability Quality audit (advisory) 2026-06-21T07:19:09.8580746Z - Title: Subnet-exclusive sync + per-endpoint subnet-membership list traceability Quality audit (advisory) 2026-06-21T07:19:09.8581046Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8581181Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8581271Z ### REQ-INST-14 traceability Quality audit (advisory) 2026-06-21T07:19:09.8581704Z - Title: Resource advertisement (subnet resource registry): free-text blurb, both-authored, registry projection, visibility/whitelist-gated traceability Quality audit (advisory) 2026-06-21T07:19:09.8582191Z - Required stages: doc, impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8582344Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8582426Z ### REQ-INST-15 traceability Quality audit (advisory) 2026-06-21T07:19:09.8583175Z - Title: Immutable home subnet (assigned at creation: auto-if-one/ask-if-many) + spt fork (cross-subnet clone to a new identity, copy-then-diverge, not re-home); adapter chosen at creation from registered hostable adapters, changed only via launch/resume-under-new (ADR-0010) traceability Quality audit (advisory) 2026-06-21T07:19:09.8583995Z - Required stages: doc, impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8584148Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8584242Z ### REQ-REACH-1 traceability Quality audit (advisory) 2026-06-21T07:19:09.8584462Z - Title: Off-node remote-drive detection + file transfer traceability Quality audit (advisory) 2026-06-21T07:19:09.8584734Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8584891Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8584973Z ### REQ-REACH-2 traceability Quality audit (advisory) 2026-06-21T07:19:09.8585192Z - Title: Remote command execution (deferred, consent-gated) traceability Quality audit (advisory) 2026-06-21T07:19:09.8585477Z - Required stages: traceability Quality audit (advisory) 2026-06-21T07:19:09.8585600Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8585690Z ### REQ-MSG-1 traceability Quality audit (advisory) 2026-06-21T07:19:09.8586194Z - Title: Local message delivery: TCP-first to a registered address, spool fallback when offline; id->address via registry (stale-clean first); reply routing (__REPLY_TO__) traceability Quality audit (advisory) 2026-06-21T07:19:09.8586766Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8586920Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8587000Z ### REQ-MSG-2 traceability Quality audit (advisory) 2026-06-21T07:19:09.8587334Z - Title: spt binary CLI surface: send/ring/ready(+--once)/list/stop/whoami, stable arg shapes + exit codes traceability Quality audit (advisory) 2026-06-21T07:19:09.8587735Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8587879Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8587959Z ### REQ-MSG-3 traceability Quality audit (advisory) 2026-06-21T07:19:09.8588398Z - Title: Ready-agent lifecycle: register perch (info.json + listener + registry address) on ready, drain spooled backlog on startup, clean teardown traceability Quality audit (advisory) 2026-06-21T07:19:09.8588891Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8589152Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8589238Z ### REQ-MSG-4 traceability Quality audit (advisory) 2026-06-21T07:19:09.8590149Z - Title: Listener stream stdout emits EVENT envelope lines (sister-format, ADR-0001): parse the __REPLY_TO__ frame, pass pre-formed typed envelopes through verbatim (no double-wrap), compose otherwise, chunk oversized lines into EVENT-PART traceability Quality audit (advisory) 2026-06-21T07:19:09.8591077Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8591234Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8591325Z ### REQ-MSG-ENVELOPE traceability Quality audit (advisory) 2026-06-21T07:19:09.8595108Z - Title: The body envelope (spt-proto::event, the ADR-0001 grammar) is the SOLE canonical arriving-message format at EVERY harness arriving-message surface on an AGENT perch — api listen AND api poll/worker-poll, byte-identical (reverses REQ-MSG-4's 'hook drains keep the raw frame by contract'). SCOPE CARVE-OUT: the shell-command relay (api poll --link, cmd_poll_shell) is a distinct internal transport carrying RAW MAC'd stamped frames the shell child consumes verbatim — NOT an arriving-message surface, deliberately EXEMPT from composition (notify_shell_e2e guards this boundary). __REPLY_TO__ — mis-elevated during the clean-room port to a fake ADR-0001 'stable wire format' (spt-msg/wire.rs, lib.rs) — is REMOVED entirely (spool format_row, the spt-msg TCP frame, emit parse_frame); (from, body) carried structurally, composed once at the delivery boundary. No legacy sister-interop (spt-core never required it). Reply-correlation rebinds onto the structural from / attribute (ADR-0009 access-gate + ADR-0012 Psyche/spt-live reply-target). Self-delimiting by construction → finding F-002 (non-self-delimiting multi-message poll) dissolves. ADR-0020. traceability Quality audit (advisory) 2026-06-21T07:19:09.8598505Z - Required stages: doc, impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8598542Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8598627Z ### REQ-MSG-5 traceability Quality audit (advisory) 2026-06-21T07:19:09.8599427Z - Title: user-msg envelope kind + daemon identity gate: a Gateway endpoint / the local user's CLI author user-msg (the user's authority); agent-family senders re-stamped to plain msg; identity-gated never payload-trusted (KH 7.3/7.5); wire-additive (N-1 receivers tolerate the new type) traceability Quality audit (advisory) 2026-06-21T07:19:09.8599531Z - Required stages: doc, impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8599564Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8599650Z ### REQ-MSG-6 traceability Quality audit (advisory) 2026-06-21T07:19:09.8601176Z - Title: cross-node Gateway user-msg honored via advertised endpoint_type: a user-msg from a Gateway-typed origin survives the receive_wan funnel as user-msg (vs the fail-closed re-stamp), keyed on the QUIC-handshake-proven origin node (never wire `from`). Trust boundary = subnet membership (operator-ratified 2026-06-13); no defense against an in-subnet member forging the type. Instance.endpoint_type is an additive serde-default field extending REQ-INST-7's data model. Absent/unknown type → re-stamp (N-1 rollout grace) traceability Quality audit (advisory) 2026-06-21T07:19:09.8601282Z - Required stages: doc, impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8601315Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8601409Z ### REQ-NODE-IDENTITY traceability Quality audit (advisory) 2026-06-21T07:19:09.8601614Z - Title: Ed25519 identity primitive: keypair, detached sign/verify, stable pubkey<->hex traceability Quality audit (advisory) 2026-06-21T07:19:09.8601720Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8601752Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8601832Z ### REQ-NET-1 traceability Quality audit (advisory) 2026-06-21T07:19:09.8602001Z - Title: WAN messaging first-class, behind default-on net feature flag traceability Quality audit (advisory) 2026-06-21T07:19:09.8602100Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8602133Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8602219Z ### REQ-NET-2 traceability Quality audit (advisory) 2026-06-21T07:19:09.8602387Z - Title: n0 relay default + self-host knob + plain-language disclosure traceability Quality audit (advisory) 2026-06-21T07:19:09.8602485Z - Required stages: impl traceability Quality audit (advisory) 2026-06-21T07:19:09.8602520Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8602606Z ### REQ-NET-3 traceability Quality audit (advisory) 2026-06-21T07:19:09.8602758Z - Title: Cross-node Psyche sync over P2P replaces gh-repo-sync traceability Quality audit (advisory) 2026-06-21T07:19:09.8602863Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8602897Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8602983Z ### REQ-PAIR-1 traceability Quality audit (advisory) 2026-06-21T07:19:09.8603092Z - Title: TOTP-seeded SPAKE2 pairing traceability Quality audit (advisory) 2026-06-21T07:19:09.8603193Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8603226Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8603316Z ### REQ-PAIR-2 traceability Quality audit (advisory) 2026-06-21T07:19:09.8603454Z - Title: Local trust store with TOFU + warn-on-change traceability Quality audit (advisory) 2026-06-21T07:19:09.8603541Z - Required stages: traceability Quality audit (advisory) 2026-06-21T07:19:09.8603575Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8603649Z ### REQ-PAIR-3 traceability Quality audit (advisory) 2026-06-21T07:19:09.8603782Z - Title: Fetch current pairing code from any paired node traceability Quality audit (advisory) 2026-06-21T07:19:09.8604013Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8604051Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8604234Z ### REQ-PAIR-4 traceability Quality audit (advisory) 2026-06-21T07:19:09.8604338Z - Title: Subnet naming on first pairing traceability Quality audit (advisory) 2026-06-21T07:19:09.8604437Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8604466Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8604553Z ### REQ-PAIR-5 traceability Quality audit (advisory) 2026-06-21T07:19:09.8604834Z - Title: Multi-subnet pairing: subnet-name discovery input, create-new-names-up-front, rendezvous-token hashing traceability Quality audit (advisory) 2026-06-21T07:19:09.8604939Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8604972Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8605057Z ### REQ-PAIR-6 traceability Quality audit (advisory) 2026-06-21T07:19:09.8605301Z - Title: Elevation-gated per-subnet code fetch (UAC/root or elevated agent; else authenticator app) traceability Quality audit (advisory) 2026-06-21T07:19:09.8605401Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8605435Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8605507Z ### REQ-PAIR-7 traceability Quality audit (advisory) 2026-06-21T07:19:09.8605649Z - Title: Subnet icon (inline image metadata, GUI-only consumer) traceability Quality audit (advisory) 2026-06-21T07:19:09.8605735Z - Required stages: traceability Quality audit (advisory) 2026-06-21T07:19:09.8605774Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8605855Z ### REQ-SUBNET-1 traceability Quality audit (advisory) 2026-06-21T07:19:09.8606165Z - Title: spt subnet noun namespace: status view (bare + status [NAME] [--nodes]), create (QR/otpauth), show-code; spt pair deleted traceability Quality audit (advisory) 2026-06-21T07:19:09.8606259Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8606288Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8606380Z ### REQ-SUBNET-2 traceability Quality audit (advisory) 2026-06-21T07:19:09.8606578Z - Title: Guided join e2e: spt subnet join CLI initiator + always-on daemon pairing responder traceability Quality audit (advisory) 2026-06-21T07:19:09.8606711Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8606749Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8606848Z ### REQ-SUBNET-3 traceability Quality audit (advisory) 2026-06-21T07:19:09.8607086Z - Title: Node labels: hostname-default, gossiped, addressable in @node qualifiers (refuse-on-ambiguity) traceability Quality audit (advisory) 2026-06-21T07:19:09.8607186Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8607214Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8607295Z ### REQ-SUBNET-4 traceability Quality audit (advisory) 2026-06-21T07:19:09.8607567Z - Title: Subnet membership mutations elevation-gated (create = seed reveal; join = trust-boundary enrollment) traceability Quality audit (advisory) 2026-06-21T07:19:09.8607673Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8607706Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8607791Z ### REQ-DOCS-6 traceability Quality audit (advisory) 2026-06-21T07:19:09.8608096Z - Title: spt how-to : in-binary task-oriented agent instructions (anti-drift; quickstart prompts point agents at it) traceability Quality audit (advisory) 2026-06-21T07:19:09.8608191Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8608230Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8608316Z ### REQ-SEC-1 traceability Quality audit (advisory) 2026-06-21T07:19:09.8608689Z - Title: Per-endpoint access whitelist: origin-node gate, stateful-firewall (reply/outbound exempt), node-now/user-later, outer gate before grants traceability Quality audit (advisory) 2026-06-21T07:19:09.8608787Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8608821Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8608912Z ### REQ-NOTIF-1 traceability Quality audit (advisory) 2026-06-21T07:19:09.8609345Z - Title: Notification primitive: per-subnet replicated spool, seen/dismissed, resurface-at-boundary, subsumes update+consent prompts traceability Quality audit (advisory) 2026-06-21T07:19:09.8609447Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8609476Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8609581Z ### REQ-NOTIF-2 traceability Quality audit (advisory) 2026-06-21T07:19:09.8609819Z - Title: spt notify (agent-issued subnet notif) + notif_command manifest seam (harness + shell adapters) traceability Quality audit (advisory) 2026-06-21T07:19:09.8609939Z - Required stages: doc, impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8609972Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8610058Z ### REQ-UPD-1 traceability Quality audit (advisory) 2026-06-21T07:19:09.8610167Z - Title: Peer-propagated update over P2P traceability Quality audit (advisory) 2026-06-21T07:19:09.8610264Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8610301Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8610387Z ### REQ-UPD-2 traceability Quality audit (advisory) 2026-06-21T07:19:09.8610520Z - Title: All binaries signature-verified before handoff traceability Quality audit (advisory) 2026-06-21T07:19:09.8610616Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8610644Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8610730Z ### REQ-UPD-3 traceability Quality audit (advisory) 2026-06-21T07:19:09.8610898Z - Title: No endpoint process terminates/suspends during self-update traceability Quality audit (advisory) 2026-06-21T07:19:09.8610997Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8611031Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8611121Z ### REQ-UPD-4 traceability Quality audit (advisory) 2026-06-21T07:19:09.8611288Z - Title: Update gated on user confirmation by default; opt-in full-auto traceability Quality audit (advisory) 2026-06-21T07:19:09.8611489Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8611598Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8611688Z ### REQ-UPD-5 traceability Quality audit (advisory) 2026-06-21T07:19:09.8611818Z - Title: spt-core ripple-updates registered adapters traceability Quality audit (advisory) 2026-06-21T07:19:09.8611923Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8611955Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8612040Z ### REQ-UPD-6 traceability Quality audit (advisory) 2026-06-21T07:19:09.8612823Z - Title: Platform-targeted update sets and debug rollout: signed multi-platform update metadata, recipient platform selection, channel-scoped monotonic counters, debug-channel opt-in via release-key overlay, local staging plus pull-based peer propagation, and maintainer-only convergence tooling (ADR-0016) traceability Quality audit (advisory) 2026-06-21T07:19:09.8612932Z - Required stages: doc, impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8612966Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8613041Z ### REQ-UPD-7 traceability Quality audit (advisory) 2026-06-21T07:19:09.8615017Z - Title: Origin-source update bootstrap (`spt update fetch`): pull the latest signed release directly from the GitHub release origin (`SaberMage/spt-releases`) — the per-platform artifact + its `.release.json` SignedRelease metadata — and stage it through the EXISTING verify→stage pipeline (the same `plan_verified` gate: two-key signature + channel + monotonic rollback floor + SHA-256), after which the normal consent-notif / `spt update apply` flow is unchanged. Closes the peer-only-discovery gap (REQ-UPD-1): a first-in-fleet / isolated node can update with no peer to pull from. The signed-release anchor keeps the GitHub transport untrusted-but-verified. traceability Quality audit (advisory) 2026-06-21T07:19:09.8615132Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8615165Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8615250Z ### REQ-UPD-8 traceability Quality audit (advisory) 2026-06-21T07:19:09.8617694Z - Title: Platform-safe `spt update fetch` + apply platform-guard (v0.3.1 cross-OS brick fix): `spt update fetch` stages the signed multi-platform `SignedUpdateSet` (`update-set.json` + every platform artifact it names), never a platform-blind single `SignedRelease`, so local apply selects `current_platform()` and P2P re-serve lets each peer select ITS own platform. Defense-in-depth: `apply_staged` REFUSES a staged single-release artifact unless it is platform-stamped for THIS node (an unstamped pre-v0.3.2 single, or a single stamped for another OS, fail-safe refuses — the guard that alone prevents the v0.3.1 brick where a Linux ELF was applied as `spt.exe`). UX: a friendly post-apply message (`Updated spt-core to vX.Y.Z.` + changelog URL) driven by an additive `product_version` metadata field, with a release-counter fallback when absent. traceability Quality audit (advisory) 2026-06-21T07:19:09.8617802Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8617836Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8617927Z ### REQ-UPD-9 traceability Quality audit (advisory) 2026-06-21T07:19:09.8620571Z - Title: `gh_release` adapter [update] avenue (optional signing): an adapter declares `[update] avenue = "gh_release", repo = "user/repo"` (+ optional `asset`, default `adapter.spt`; + optional Ed25519 `signing_key`); spt-core's ripple compares the repo's LATEST GitHub release version against the installed adapter version and, when newer, auto-updates by fetching the release `.spt` archive (the REQ-INSTALL-9 `--release` fetch primitive) → verifies the `.spt` against `signing_key` if declared, else HTTPS+GitHub first-acquisition trust → re-extracts + re-registers the adapter root. Lets a harness adapter ship updates from its own GitHub releases with NO signing tooling or plugin coupling (removes the perri file_pull/delegated avenue blockers). Acquisition-trust mirrors `--release` + the installer first-fetch; does not alter spt-core self-update (REQ-UPD-1..8). traceability Quality audit (advisory) 2026-06-21T07:19:09.8620689Z - Required stages: doc, impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8620722Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8620819Z ### REQ-TERM-1 traceability Quality audit (advisory) 2026-06-21T07:19:09.8620975Z - Title: Process-supervisor terminal wrapper hosting broker PTYs traceability Quality audit (advisory) 2026-06-21T07:19:09.8621070Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8621095Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8621177Z ### REQ-TERM-2 traceability Quality audit (advisory) 2026-06-21T07:19:09.8621352Z - Title: session-surface abstraction; send-keys + send-line injection traceability Quality audit (advisory) 2026-06-21T07:19:09.8621557Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8621586Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8621667Z ### REQ-TERM-3 traceability Quality audit (advisory) 2026-06-21T07:19:09.8621881Z - Title: Byte-stream remote terminal streaming for v1 traceability Quality audit (advisory) 2026-06-21T07:19:09.8621986Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8622015Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8622107Z ### REQ-TERM-4 traceability Quality audit (advisory) 2026-06-21T07:19:09.8622562Z - Title: Live activity buffer (session digest): projection of normalized session logs, snapshot-pull (spt endpoint digest) + structured-delta-stream contract + api digest-entry push traceability Quality audit (advisory) 2026-06-21T07:19:09.8622671Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8622705Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8622787Z ### REQ-TERM-5 traceability Quality audit (advisory) 2026-06-21T07:19:09.8624254Z - Title: Adapter-declared digest extractor seam: a `[digest]` manifest section declaring an imperative extractor (native harness log -> the {role,text,tool,ts} contract; defaults to the [history] source files with an own-source escape hatch), `api digest-entry` push fallback, register-time validation of the section, adapter-declared presentation defaults (window depth, arg-truncation, sprint-collapse) that any consumer may override, and a `spt adapter digest-proof` author tool plus runtime skip-diagnostics (no silent drop). Reverses M9's no-manifest-seam stance; no declarative DSL. traceability Quality audit (advisory) 2026-06-21T07:19:09.8624375Z - Required stages: doc, impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8624408Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8624502Z ### REQ-TERM-6 traceability Quality audit (advisory) 2026-06-21T07:19:09.8625543Z - Title: Thread-spanning digest across session boundaries: a per-endpoint session ledger (`/sessions.log`) appended at first bind and by `api boundary` on `/clear`|`/compact` session rotation, the digest enumerating the last K sessions so its rolling window bridges a boundary, and a distinctive in-timeline boundary marker (DigestEntry::Boundary). The digest follows the live-agent thread, not a single session. traceability Quality audit (advisory) 2026-06-21T07:19:09.8625649Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8625683Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8625768Z ### REQ-TERM-7 traceability Quality audit (advisory) 2026-06-21T07:19:09.8626885Z - Title: Two-origin digest merge: spt-owned context-injection entries (psyche_download | echo_mirror | owl_message) appended by spt to the endpoint `digest.log`, timestamp-interleaved with the adapter's extracted activity records into one ordered timeline, via a distinct context-injection record category. Data model only this milestone; GUI collapse/expand and the echo-reads-digest delta loop are deferred to the surfaces that consume them. traceability Quality audit (advisory) 2026-06-21T07:19:09.8626989Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8627017Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8627108Z ### REQ-FRONT-1 traceability Quality audit (advisory) 2026-06-21T07:19:09.8627266Z - Title: Day-one launcher/manager frontend (list/launch/attach/init) traceability Quality audit (advisory) 2026-06-21T07:19:09.8627360Z - Required stages: traceability Quality audit (advisory) 2026-06-21T07:19:09.8627394Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8627471Z ### REQ-HOST-RUN-1 traceability Quality audit (advisory) 2026-06-21T07:19:09.8629903Z - Title: spt-hosted harness bringup: `spt endpoint run` spawns an adapter's `[session.self]` command template into a broker-held PTY (the spawn-session seam, brain.rs spawn_session_pid — same broker path shellhost.rs launch_shell_brokered_in uses for shells, now for kind="harness" self-role), registers the perch under the given endpoint id, returns the id. Reverses today's harness-hosted-only launch (external launcher → `api bind`). Non-interactive flag set (--adapter --id --create --resume --attach|--start|--view) covers every terminal action of the W2 interactive picker so shortcuts (cc-) bake fully non-interactive launches; composite adapter:profile resolves via registry::resolve_option leaf-replace overlay. traceability Quality audit (advisory) 2026-06-21T07:19:09.8630018Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8630052Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8630138Z ### REQ-RC-1 traceability Quality audit (advisory) 2026-06-21T07:19:09.8632126Z - Title: `spt rc ` — user CLI attaching a local terminal to a broker-held PTY, reusing the cross-node attach machinery (attach.rs request_attach → send_attach_input pump, spt-net AttachRecord codec); local attach is the degenerate single-node case of the cross-node path (rides REQ-TERM-3 byte-stream streaming). Read-only `--view` (watch, no stdin forwarded). Clean detach that does NOT terminate the broker-held session (KNOWN-HAZARDS: PTY ownership stays with the broker; no termination on detach). Explicit detach keybind that cannot collide with harness passthrough input (legacy capsule used a ctrl-b prefix); documented. ConPTY DSR auto-answer in the attach reader (hazard 5.5). traceability Quality audit (advisory) 2026-06-21T07:19:09.8632418Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8632451Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8632546Z ### REQ-HOST-RUN-2 traceability Quality audit (advisory) 2026-06-21T07:19:09.8634205Z - Title: Project-scoped working directory for spt-hosted bringup: `spt endpoint run` lands the broker-spawned harness PTY in the user's PROJECT cwd, not the daemon's, via an additive `SpawnReq.cwd` field carried through the broker PTY spawn (portable-pty CommandBuilder cwd). N-1-safe wire change (additive, defaulted). Required because the consumer (Claude Code) is project-scoped: broker-inherited cwd = the daemon's cwd = the wrong `.claude`, wrong session history, wrong digest source; `cc ` at a project root MUST land the harness in that project. W1 ships broker-inherited cwd as a bringup-proof shortcut only; this REQ must land before the M12 gate (doyle, 2026-06-14). traceability Quality audit (advisory) 2026-06-21T07:19:09.8634319Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8634353Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8634438Z ### REQ-RUN-PICKER traceability Quality audit (advisory) 2026-06-21T07:19:09.8639125Z - Title: Interactive `spt endpoint run` picker (ratatui TUI): bare `spt endpoint run` (no --adapter/--id) enters an in-process picker (flags-present = the REQ-HOST-RUN-1 non-interactive path, untouched). Layer 1 picks kind (Create new | Pick existing). Create-new: choose a registered kind="harness" adapter with its shipped+local profiles tree-nested (registry::registered / manifest.profiles / local_profile_names) → enter a charset-validated id → start. Pick-existing: category select (left/right) over [ | Local node | Subnet], endpoints grouped + alphabetically sorted per category, a status square per endpoint (online green ■ / offline gray ▢ — the blue "attached" tri-state + Kick are DEFERRED to a broker attach-presence slice, M12-W2-RULING Q1), type-to-filter (`/`, nucleo-matcher), a pinned keybind legend, and a right-half two-pane description (harness adapter:profile · best-effort project history newest→oldest from the contextstore p- branches, empty-if-none · `spt endpoint description`). Confirm layer offers status-dependent options — Attach/Start/View (rc pump / cmd_endpoint_run) · Instantiate-locally (remote) · Change-harness-adapter (offline) · Fork (cmd_fork) · Resume-from-history (offline+LOCAL only; enumerate spt_store::sessions::last_k, titles ` @ (…id5)`, feed session_id → cmd_endpoint_run --resume). A single action enum is the source of truth so a future tap-mode (phone PTY) layers on without re-coupling to keybinds. EVERY terminal action routes through cmd_endpoint_run / existing CLI fns — no second bringup path. traceability Quality audit (advisory) 2026-06-21T07:19:09.8639261Z - Required stages: doc, impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8639299Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8639391Z ### REQ-RUN-SHORTCUT traceability Quality audit (advisory) 2026-06-21T07:19:09.8643988Z - Title: `-` launcher shortcut generation (picker `s` keybind, M12-W2-T2.4): from any pre-start options set the picker writes/updates a `-` launcher at the project root baking the current selection's non-interactive `spt endpoint run` flags (terminal actions only: adapter[:profile] + id + (create|resume) + (start|attach|view); Kick/Instantiate/Change-adapter/Fork are interactive-only, not bakeable). BASENAME IS A PARAMETER (operator rev. 2026-06-14): harness-agnostic spt-core defaults to `spt` (→ `spt-`); an adapter/flow OVERRIDES it (spt-claude-code → `cc`), so spt-core NEVER bakes `cc` (a harness name) into itself. The basename must be a DISTINCT token, never bare `spt` (a `spt.cmd` would shadow the real `spt.exe` only under cmd.exe cwd-first search, silently no-op in PowerShell/Unix, and self-recurse). The script is the CURRENT OS's native form — `.cmd` on Windows (NOT `.ps1`: default PATHEXT excludes `.ps1` so a bare/ext-less name never resolves one; `.cmd` is PATHEXT-resolvable), POSIX `sh` (+chmod +x) on Unix (a single portable form can't be both). The generated header documents the invocation reality (cmd.exe bare `` in the project dir / PowerShell `.\` / Unix `./`; a truly-bare basename on PATH = a PATH-installed launcher, `/spt:setup`'s job). Overwrite is SENTINEL-guarded: the generator writes + checks a generated-by header marker — it overwrites its own prior output freely, but REFUSES + warns if a same-named file lacks the sentinel (never clobber a user file). Requires the additive `--create` flag on `Run{}` (the default-fresh made explicit; N-1-safe). traceability Quality audit (advisory) 2026-06-21T07:19:09.8644303Z - Required stages: doc, impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8644335Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8644435Z ### REQ-ELEVATE-1 traceability Quality audit (advisory) 2026-06-21T07:19:09.8647480Z - Title: Cross-platform self-elevating re-launch for privilege-gated commands: a pure decision seam `decide_elevation_path(os, elevation, interactive_tty, has_display, has_pkexec, has_term_emulator) -> ElevatePath{AlreadyElevated, InlineSudo, UacWindow, Pkexec, TerminalEmulator, PrintHint}` selecting how to re-acquire privilege, and the per-OS impure launchers it dispatches — Windows UAC console (ShellExecuteW `runas` on the abs-exe + verbatim argv; the elevated child does the work, prints 'You can close this window', and pauses for a keypress; the original prints 'Elevated terminal launched…' and exits 0; NEVER pipes the child's stdout back across the privilege boundary), Linux desktop pkexec (preferred, native polkit GUI auth) else x-terminal-emulator -e sudo (fallback list x-terminal-emulator→gnome-terminal→konsole→xterm), the existing interactive-TTY inline sudo, and the headless/no-path floor that prints the absolute-path command. Reused by every gated command (not subnet-specific). Generalizes should_auto_elevate. traceability Quality audit (advisory) 2026-06-21T07:19:09.8647594Z - Required stages: doc, impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8647637Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8647719Z ### REQ-WHOAMI-1 traceability Quality audit (advisory) 2026-06-21T07:19:09.8649341Z - Title: `spt whoami` is a thin ALIAS for `spt endpoint list` (full output: the SELF pin + the subnet roster) — the standalone bare-id command is dropped (the `id=$(spt whoami)` capture was never a real pattern: env vars don't persist between agent tool calls). The one new render: the `endpoint list` SELF pin carries the Self endpoint's authored `endpoint description` (info::read_info(...).resources) when present, inline after the liveness state. whoami stays a top-level hot-path verb (parse unchanged, REQ-MSG-9). traceability Quality audit (advisory) 2026-06-21T07:19:09.8649445Z - Required stages: doc, impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8649488Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8649613Z ### REQ-RCVIEW-1 traceability Quality audit (advisory) 2026-06-21T07:19:09.8653986Z - Title: Remote-attach controller/viewer model (CONTEXT.md:317): a session's broker OutputLog serves ONE interactive controller (input + EXCLUSIVE PTY resize; its viewport sets the size, sent on attach + every window change via crossterm Event::Resize) plus ANY NUMBER of read-only `--view` attachers (output-only, no input, no resize; client-side letterbox — center+pad when larger, clip+1-line indicator when smaller; only the local ctrl-b d detach chord). Attach intent is three-valued (`Viewer | Control | Take`, wire-default Control): Control to a FREE endpoint becomes controller, Control to a CONTROLLED endpoint is REFUSED with guidance (`--view`/`--take`) — never auto-viewer, never silent-displace. Wire adds (additive, N-1 skip-unknown): `Request.intent`, `Resize{rows,cols}` (controller-only), `Size{rows,cols}` (→viewer), `Displaced{by}` (→displaced controller). The brain-resume cursor (delivered_through, ADR-0018) tracks the CONTROLLER ONLY; viewers replay from their own from_seq and never move it. Dormancy keys on the controller ONLY: controller attach wakes / controller detach goes dormant (even with viewers present); viewer attach/detach is wake-neutral and may watch a dormant endpoint as-is. v1: viewing is gated identically to driving — a viewer runs the same access_check(Unsolicited) as a controller (watching reveals full session contents = a real disclosure); a lighter distinct watch-gate is deferred to cross-subnet/finer-consent (CONTEXT.md:317 'driving ≠ watching' = the future seam). traceability Quality audit (advisory) 2026-06-21T07:19:09.8654323Z - Required stages: doc, impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8654356Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8654443Z ### REQ-KICK-1 traceability Quality audit (advisory) 2026-06-21T07:19:09.8656867Z - Title: Explicit, loud controller displacement: `spt rc kick ` / `--take` (Take intent) kicks the incumbent controller and becomes controller; the displaced controller receives a LOUD `Displaced{by}` notice and is FULLY DETACHED (not demoted to a viewer). A default attach to a controlled endpoint is NEVER a silent displace (it is the Control busy-refusal). An old (N-1) rc omits intent → Control, so it can drive a free endpoint but CANNOT `--take` — it can never silently steal, and gets a clean busy-refusal instead. Taking control rides the same access_check(endpoint, origin, Unsolicited) as a normal control attach (if you may drive, you may take — no elevated kick policy). The picker surfaces 'Kick and attach' (Take) only on a controlled (blue ■) endpoint, via the existing attach dispatch (single-bringup-path: intent is a parameter). traceability Quality audit (advisory) 2026-06-21T07:19:09.8656991Z - Required stages: doc, impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8657024Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8657115Z ### REQ-PICKER-1 traceability Quality audit (advisory) 2026-06-21T07:19:09.8660701Z - Title: The picker renders a FOUR-state endpoint status (extending the W2 online/offline duality): the list-item square AND a color-coded STATUS line at the top of the pick-existing right-side details both show — gray OFFLINE; green ONLINE (online + PTY-controllable spt-hosted, not controlled); amber 'ONLINE - HARNESS ONLY' (online but NOT broker-PTY-controllable = harness-hosted, no broker PTY seat — today mis-shows green); blue 'ONLINE + CONTROLLED' (online + driven_by.is_some()). Derived on EndpointRow from {offline | controllable | driven_by} with precedence offline→gray, else driven_by→blue, else !controllable→amber, else green (driven_by outranks harness-only; mutually exclusive in practice — a harness-only endpoint has no broker PTY to control). The controllable discriminator is a NEW InfoJson.controllable: Option (serde-default, N-1-safe), stamped at the establish seam — cmd_listen (harness-hosted relay, no broker PTY) → Some(false); cmd_bind live_agent (spt-hosted broker PTY) → Some(true); absent → not-controllable (amber) default (harness-hosted is the common mis-reported case; one bind self-corrects). Store-projection-only (no live daemon query — doyle ruling). (v0.10.0) traceability Quality audit (advisory) 2026-06-21T07:19:09.8660822Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8660859Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8660950Z ### REQ-PICKER-2 traceability Quality audit (advisory) 2026-06-21T07:19:09.8662744Z - Title: The picker's project-history loader reads the git-backed context store, not the bare working tree: data.rs project_history_for enumerates an endpoint's projects via the BranchStore branch set (the context store keeps per-project context in git branches — contextstore::project_branch(project_id), checked out to projects/// only on-demand) instead of raw std::fs::read_dir over the empty working tree (which returned empty for ALL rows incl wall-a — the operator bug). Ordered newest→oldest by branch commit recency; degrades to empty (informational pane), never fails. (v0.10.0) traceability Quality audit (advisory) 2026-06-21T07:19:09.8662859Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8662897Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8662987Z ### REQ-PICKER-3 traceability Quality audit (advisory) 2026-06-21T07:19:09.8665399Z - Title: A self-owned subnet row reconciles its status to the LIVE roster: a Subnet-category row whose endpoint_id overlaps a local (is_local) roster id is self-owned (this node hosts it), so its status square is OVERRIDDEN with the live roster status — the WAN registry snapshot (wansend::load_snapshots) is a periodically-advertised, independently-stale projection, while the local roster (p.alive) is ground truth for an endpoint this node hosts. One status square per endpoint (CONTEXT.md:348-350 — nothing licenses opposite squares for one endpoint across its Local vs Subnet listings). A reconcile pass in data.rs after the local_rows + subnet_rows gather; BOTH category listings are preserved (Local + Subnet are legitimately distinct views — you are in your own subnet), only the STATUS is unified. (v0.10.0) traceability Quality audit (advisory) 2026-06-21T07:19:09.8665700Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8665733Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8665813Z ### REQ-PICKER-4 traceability Quality audit (advisory) 2026-06-21T07:19:09.8667680Z - Title: The picker's Subnet category renders the canonical node LABEL, not bare key-hex: a subnet row's node renders as 'LABEL (keyprefix…)' (e.g. 'HFENDULEAM (bcead52b…)') per CONTEXT.md:650 + Instance.node_label, NOT the raw node key-hex (SPT_DEV:14efb80cb… — a picker-only regression because resource_projection→ResourceRow drops node_label, so data.rs subnet_rows uses the raw row.node). Thread node_label into the picker subnet path (ResourceRow gains node_label, or subnet_rows looks it up via the registry's node_labels) and REUSE the one canonical render (format!("{l} ({}…)", key_prefix) — cli.rs / wansend.rs), never a re-implementation. (v0.10.0) traceability Quality audit (advisory) 2026-06-21T07:19:09.8667842Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8667885Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8667981Z ### REQ-PICKER-5 traceability Quality audit (advisory) 2026-06-21T07:19:09.8671063Z - Title: `spt endpoint list` (bare/subnet view) renders an ALIGNED table with canonical node labels: cmd_endpoint_list prints subnet rows with `\t` TAB separators (cli.rs:~1651-1662) so variable-width endpoint_ids snap fields to different tab-stops → a RAGGED status column (operator screenshot: X/help statuses misaligned vs rt-*/sptc-*/wall-a); and it calls the node renderer with no label → bare key-hex for every row (SAME ResourceRow-drops-node_label root as REQ-PICKER-4). FIX: max-width per-column padding (mirror render_node_rows' pad, pad by char count not byte len — '…' is multibyte) replacing the tabs, and render the node via the shared node_label_display now that ResourceRow carries node_label (REQ-PICKER-4). Extract a pure row-formatter seam so the alignment+label is unit-testable. ALSO: the bare list is the SUBNET view (a just-run LOCAL perch is invisible cross-subnet until the next advertise tick), so emit a `--local` hint line so a freshly-run endpoint isn't perceived as lost. (v0.10.0; operator-flagged + doyle dispatch 2026-06-17) traceability Quality audit (advisory) 2026-06-21T07:19:09.8671172Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8671209Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8671304Z ### REQ-SEND-SPT-HOSTED traceability Quality audit (advisory) 2026-06-21T07:19:09.8674874Z - Title: An inbound `spt send` is DELIVERED to an spt-hosted endpoint (brought up via `spt endpoint run` → `api bind`, broker holds its PTY, NO `api listen` relay). Today cmd_bind→establish_perch (api/startup.rs ~441) writes info.json + ready marker + controllable=Some(true) but registers NO message-listener / NO address, so deliver.rs resolve_address→None→spool (deliver.rs:132-140) and the message NEVER reaches the live PTY — the endpoint reads 'online' (ready marker) yet `spt send` silently SPOOLS ('online but not deliverable' lie). Per CONTEXT:187-188 the daemon owns the PTY and delivers, manifest-configurable per activity-state (direct PTY injection / relay / HTTP). FIX: route an inbound send for an spt-hosted target through the daemon → broker InputReq → session.write_input PTY-inject (broker.rs dispatch_input/write_input ~988-1022), the same path the brain uses; the live-delivery handshake must report Sent (not Queued) and stop the spool-only fallback for a broker-hosted, PTY-resident endpoint. Detection is local: controllable==Some(true) + spt-hosted state + resolve_address==None. = the spt-core HALF of the wall-b finding (perri owns the adapter half: bind-hook fired-zero-perch + the missing endpoint-run int test). (post-v0.10.0) traceability Quality audit (advisory) 2026-06-21T07:19:09.8675001Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8675039Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8675130Z ### REQ-HAZARD-RC-EOF traceability Quality audit (advisory) 2026-06-21T07:19:09.8678993Z - Title: A severed broker stream during a live rc session surfaces GRACEFULLY, never as a raw io error that crashes the PTY. The rc read-loop (rc.rs:352-362) continues only on WouldBlock/TimedOut; ANY other read_event_until error — including UnexpectedEof 'failed to fill whole buffer' — returns Err → RC_FAIL → the PTY 'crashes' from the user's view. Confirmed trigger: a deliberate `spt daemon stop` (broker bounce) severs an active rc (perri stopped the daemon to release owlery watch handles). Same severed-broker-stream EOF class as the v0.9.1 seed fix (seed_fail_message) and the listener-death case — spt-core must classify a broker-gone EOF and (a) surface a CLEAR actionable message ('daemon stopped/restarted — re-run / reconnect'), never the raw buffer error, and ideally (b) AUTO-REATTACH to the same session on the fresh broker (the broker is the daemon-lifetime anchor; it returns on the next `spt api` call). FOLD two side-observations: (1) `spt daemon stop` SILENTLY drops active rc/live sessions — warn ('N active session(s) will drop') or graceful-detach on stop; (2) the daemon holds owlery WATCH HANDLES on perch dirs so a torn-down perch dir stays 'Device busy' until a full daemon stop releases them (perri's rt-* cleanup) — a torn-down perch's handle should release without a daemon stop. doyle Finding C, root-caused. (post-v0.10.0) traceability Quality audit (advisory) 2026-06-21T07:19:09.8679322Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8679356Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8679461Z ### REQ-HAZARD-DEFERRED-MANIFEST traceability Quality audit (advisory) 2026-06-21T07:19:09.8681760Z - Title: A pointer-mode (delegated / GhReleaseManaged) adapter whose binary/manifest is not yet extracted is reported with a CLEAR diagnostic, never silently dropped. Today such an adapter reads its manifest LIVE from source_dir (registry.rs manifest_dir ~146/149); a deferred / un-extracted install makes load_manifest fail → registered() (~410, filter_map(.ok())) SILENTLY DROPS the row → downstream ADAPTER_UNRESOLVED + a cryptic os-error-2 on `spt adapter use`. FIX: surface a clear diagnostic at the resolver + at `adapter use` (name the adapter + the deferred/missing-manifest cause + the fix), not a silent filter-drop and not a bare os-error-2; consider an eager manifest copy at register time so host_binaries survive before the binary download completes. doyle Finding A. (post-v0.10.0) traceability Quality audit (advisory) 2026-06-21T07:19:09.8681864Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8681898Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8681994Z ### REQ-HAZARD-ENV-SUBST traceability Quality audit (advisory) 2026-06-21T07:19:09.8685294Z - Title: `spt endpoint run` HONORS manifest [env.] direction=inject values (with {key} substitution) on the spt-hosted spawn. Today only the [session.self] command ARGV is {id}-substituted; the [env] inject value is NEITHER substituted NOR applied — manifest.schema.json promises EnvVar.value = 'Value to inject (with substitution)' but prepare_harness_spawn fills only argv and SpawnReq carries no env, so a [env.SPT_ENDPOINT_ID].value='{id}' arrives EMPTY. A FLAGLESS harness (bare `claude`, no argv slot for {id}) then routes the id via [env] → empty → SessionStart sees empty $SPT_ENDPOINT_ID → seeds-by-PPID instead of binding → ZERO perch → NO_PERCH (the actual wall-b bind blocker; perri hard-repro'd). SILENT failure (empty inject, no error). FIX (doyle ruled a): fill every [env] inject value from the SAME {key} catalog as argv/role (mirror F-009 TEMPLATE fill, whole-string fill_template for an env value), thread it through SpawnReq.env → the broker sets it on the spawned PTY child. Correctness fix — schema already promises it, NO manifest change, NO new binary. PAIRS with REQ-SEND-SPT-HOSTED to make endpoint run fully work. doyle F-013. (post-v0.10.0) traceability Quality audit (advisory) 2026-06-21T07:19:09.8685424Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8685453Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8685557Z ### REQ-HAZARD-ROSTER-GHOST traceability Quality audit (advisory) 2026-06-21T07:19:09.8687925Z - Title: A LOCAL subnet roster entry whose backing perch is erased does NOT keep advertising Active (no phantom perch-less endpoint). `api session-end --erase` removes the perch (owlery dir gone) but the subnet roster (identity/registry/.json) keeps the endpoint's instance row ACTIVE with no backing perch; `endpoint stop` says 'address unregistered' yet the line persists; no CLI verb forgets a roster entry, and a hand-edit is re-added by the single-writer daemon advertiser. FIX: daemon-side self-heal — the advertiser DROPS/forgets a LOCAL roster entry whose backing perch no longer exists (stops advertising it Active), and/or a `forget`/evict verb; verify whether the epoch lease eventually evicts it (slow-self-heal) vs a real leak and scope accordingly. doyle secondary finding (perri). (post-v0.10.0) traceability Quality audit (advisory) 2026-06-21T07:19:09.8688159Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8688196Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8688316Z ### REQ-HAZARD-HOSTED-LIVENESS-RECONCILE traceability Quality audit (advisory) 2026-06-21T07:19:09.8692282Z - Title: B2 KEYSTONE: a daemon-hosted (spt-hosted) endpoint's info.json status is RECONCILED to real liveness, not left latched online. The broker exit-waiter (broker.rs:889-910) reaps its in-mem session table + emits ExitEvent but NEVER touches info.json; lifecycle::mark_offline only fires on Psyche teardown — so a dead/exited harness (operator closed the tab) stays status=online forever (is_perch_alive returns ONLINE for daemon-hosted, liveness.rs:80-93). FIX (doyle ruled PULL-PRIMARY — the live-status analog of REQ-HAZARD-ROSTER-GHOST): the livehost reconcile loop (reconcile_once livehost.rs:226-313) queries the broker's live session set (KIND_SESSIONS) each tick and, for any status=online live_agent perch PAST the boot grace whose endpoint has NO live broker session, marks it offline (lifecycle::mark_offline → status=offline → is_perch_alive=false). GATED on spt-hosted (controllable==Some(true)) so a HARNESS-HOSTED relay live agent (api listen, legitimately online with no broker session) is NEVER mis-marked. Crash-robust + self-healing on the next tick (clear-on-event is not crash-robust alone). PUSH (brain ExitEvent→mark_offline) is an OPTIONAL fast-path only if the daemon brain is reliably subscribed to all hosted sessions; correctness rides the pull. Broker stays stateless (ADR-0004 §B — brain owns the info.json write). (v0.12.0) traceability Quality audit (advisory) 2026-06-21T07:19:09.8692401Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8692429Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8692521Z ### REQ-HAZARD-RC-ATTACH-FAILFAST traceability Quality audit (advisory) 2026-06-21T07:19:09.8695727Z - Title: B1: `spt rc ` to a DEAD or non-streaming session fails fast with a clear message, never an INFINITE blank screen. Today rc.rs run_attach (209-231) + pump spawns PUMP_IPC_READER and blocks: the poll times out each slice but the stream never produces output, so the operator sees a permanent blank (operator: fresh wall-f attached, closed tab, then `spt rc wall-f` HUNG — the broker still resolved a session for it). FIX: (a) once B2 lands, gate attach on is_online/status — an offline endpoint yields a clean 'endpoint offline, start it' not an attach; (b) fail-fast — if the attach-open ack / first output does not arrive within a bound, surface a clear message, never an infinite blank; (c) the broker EOFs the attach stream when the session's child is dead, so rc's existing PumpEnd::BrokerGone graceful path (REQ-HAZARD-RC-EOF) catches it. PIN the exact sub-mechanism with a repro test FIRST (dead-session-lingers-in-broker vs reaped-but-rc-waits vs alive-resting-no-wake — the wall-f Windows tab-close: child alive-silent vs dead-not-reaped). (v0.12.0) traceability Quality audit (advisory) 2026-06-21T07:19:09.8695845Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8695879Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8695975Z ### REQ-ENDPOINT-STOP-OFFLINE traceability Quality audit (advisory) 2026-06-21T07:19:09.8697221Z - Title: H3: `spt endpoint stop ` marks the endpoint OFFLINE (alive=false), not merely de-readied. cmd_stop (cli.rs:2994-3010) removes the ready marker + unregisters the address but does NOT set status offline, so a stopped daemon-hosted endpoint still reports alive=true (status=online latch). FIX: add set_status(perch, STATUS_OFFLINE) to cmd_stop — folds with B2 (same setter). Unit: stop → is_perch_alive=false / alive=false. (v0.12.0) traceability Quality audit (advisory) 2026-06-21T07:19:09.8697332Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8697366Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8697461Z ### REQ-HAZARD-DAEMON-STOP-BARRIER traceability Quality audit (advisory) 2026-06-21T07:19:09.8699236Z - Title: B3: `spt daemon stop` then an immediate `spt daemon start` does NOT race — stop fully completes before it returns. Today request_stop (seedmap.rs:240-255) returns on the KIND_STOPPING ack (sent seedmap.rs:174-176) BEFORE the seed socket unbinds, so a following is_running ping (daemon.rs:375) wins the exit window and start reports ALREADY_RUNNING (operator: daemon stop → STOPPED then start → ALREADY_RUNNING). FIX: unbind/stop-gate the seed socket BEFORE acking KIND_STOPPING, OR request_stop waits for a ping-to-fail before returning. Unit: stop then immediate is_running()==false. (v0.12.0) traceability Quality audit (advisory) 2026-06-21T07:19:09.8699551Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8699580Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8699679Z ### REQ-HAZARD-DAEMON-STOP-REAP traceability Quality audit (advisory) 2026-06-21T07:19:09.8701455Z - Title: Breap: `spt daemon stop` REAPS the spt-hosted children it spawned — no orphaned psyche/harness processes. Today a stop leaves ~8 orphaned claude-spt-psyche.exe + spt.exe: Psyches are spawned DETACHED (runtime.rs:342-356, the Child is dropped — 'Detached' ~349) and the livehost stop flag Arc is NEVER raised (brainproc.rs:227-230 holds it 'for symmetry'). FIX: on stop, raise the livehost stop flag AND kill the spawned psyche/spt-hosted children — via a Windows job object / Unix process-group so the children die with the daemon (not detached-immortal). Folds with B3 (both the stop path). (v0.12.0) traceability Quality audit (advisory) 2026-06-21T07:19:09.8701572Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8701610Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8701733Z ### REQ-HAZARD-LIVEHOST-BOOT-LIVENESS-GATE traceability Quality audit (advisory) 2026-06-21T07:19:09.8704059Z - Title: B5: `spt daemon start` does NOT revive phantom Psyches for dead-but-online-latched perches. Today reconcile_once (livehost.rs:285) spawns a Psyche per status=online live_agent perch at boot WITHOUT verifying the harness child / {id}-psyche is actually alive — so a Cold start after an unclean stop revives N psyches for N dead-but-latched perches (3 psyches for 3 dead perches). FIX: gate the boot psyche-spawn on real child-liveness — a perch with NO live broker session (the B2 reconcile signal) is marked OFFLINE at boot instead of hosted, so a dead-harness perch is never revived. Shares the B2 reconcile loop (this is its boot-gate arm); composes with B2's honest latch. Also closes wall-a's psyche_host_error gap (residency-confirm does not run at boot tick-1, livehost.rs:395-441 / 257-263). (v0.12.0) traceability Quality audit (advisory) 2026-06-21T07:19:09.8704176Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8704210Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8704333Z ### REQ-HAZARD-BRAIN-RESTART-LIFECYCLE-REHYDRATE traceability Quality audit (advisory) 2026-06-21T07:19:09.8706869Z - Title: B4 (deepest): a bare brain restart (broker survives) REHYDRATES the live-agent lifecycle so post-restart endpoints are hosted + attachable. Today resume_sessions (brainproc.rs:186, brain.rs:797-809) re-subscribes to the broker's PTY sessions but ALL BrainLifecycle instances (lifecycle.rs:58-130; the ephemeral brain.rs:254-275) are LOST on restart → a post-restart live endpoint gets no livehost → its Psyche is never (re)hosted and new spawns die / can't attach until a FULL daemon reset (operator: perri's brain kill+restart wedged everything until a full daemon kill). FIX: on brain startup, rebuild a BrainLifecycle per resumed live-capable session — load the manifest from the adapter registry → instantiate → start the pulse — the rehydrate the resume no-op cannot do. Composes with B2 (the reconcile re-hosts from the honest on-disk status after rehydrate). (v0.12.0) traceability Quality audit (advisory) 2026-06-21T07:19:09.8706987Z - Required stages: traceability Quality audit (advisory) 2026-06-21T07:19:09.8707020Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8707133Z ### REQ-HAZARD-BRAIN-RESTART-PSYCHE-DUP traceability Quality audit (advisory) 2026-06-21T07:19:09.8710902Z - Title: A bare brain restart leaves EXACTLY ONE `{id}-psyche` process per endpoint — no duplicate. On an abrupt brain death stop_host never runs (the LiveSet + owned child handles die with the brain) and Breap's job/group only reaps at DAEMON stop, so the PRIOR brain's Psyche stays ALIVE; the respawned brain's reconcile re-hosts a SECOND Psyche and overwrites the `{id}-psyche` perch pid, leaving the old one untracked + alive = a duplicate that lingers until daemon-stop (the operator's 'brain kill+restart wedged everything'). FIX: at brain start, BEFORE the first reconcile re-hosts, reap any pre-existing `{id}-psyche` orphan — ID-SPECIFICALLY (recycle-safe on the shared box, where sibling agents share the `claude` basename): scoped-kill the recorded pid ONLY IF it is alive AND its exe basename == the adapter's psyche program (normalize_basename) AND its COMMAND LINE contains the full psyche id `-psyche` (baked via {id}); a sibling never carries THIS id, and any unreadable signal FAILS SAFE (decline to reap — a missed dup is bounded by Breap, a wrong-kill is catastrophic). CAVEAT: the cmdline carries `-psyche` only when the adapter's psyche_init.command uses {id} (the norm); a non-{id} adapter safely MISSES the reap (today's behavior, Breap bounds it) — never a wrong-kill. (v0.12.0) traceability Quality audit (advisory) 2026-06-21T07:19:09.8711217Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8711255Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8711361Z ### REQ-HAZARD-UNHOST-PSYCHE-REAP traceability Quality audit (advisory) 2026-06-21T07:19:09.8714489Z - Title: On un-host, the detached `{id}-psyche` HARNESS PROCESS is reaped — not just its in-brain pulse-driver thread. Today stop_host (livehost.rs:203) trips the HostedLife stop flag + JOINS the driver thread, but the Psyche is a detached harness process (spawn_psyche → ManifestRuntime detached spawn, runtime.rs:341-356; its pid is untracked in HostedLife though stamped on the `{id}-psyche` perch, where residency-confirm already reads it). So endpoint-stop / mid-life agent-death / a B2/B5 offline-then-unhost leaves the psyche process ORPHANED, alive until the next daemon-stop (where Breap's job/group reaps the whole brain subtree). The Psyche STAYS a harness process by design (CONTEXT.md 97/203/251 — headless harness session, its own perch) — the fix does NOT move it in-brain; it SCOPED-kills the `{id}-psyche` pid on un-host (never machine-wide — shared box). Track the pid in HostedLife at host_one (cleanest) or read the `{id}-psyche` perch pid at stop_host. Composes with H3 (endpoint stop → offline → reconcile un-host → reap) and B2/B5 (the offline arms that trigger un-host). (v0.12.0) traceability Quality audit (advisory) 2026-06-21T07:19:09.8714605Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8714638Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8714736Z ### REQ-ENDPOINT-PURGE traceability Quality audit (advisory) 2026-06-21T07:19:09.8719463Z - Title: `spt endpoint purge ` fully removes an endpoint AND every record keyed on it — the formal teardown devs/CI need for clean test setup/reset. NOT consent-gated (a local dev/test op — no peer consent). OFFLINE-ONLY: refuses while the endpoint is online / daemon-hosted (deleting records out from under a live host risks the daemon re-creating or re-hosting mid-purge); `--force` STOPS it first (endpoint stop → wait for the daemon reconcile to un-host + reap the Psyche) THEN purges. Confirms interactively unless `--yes` (the CI path). Refuses purging the CALLER's OWN running id. All LOCAL — purge reaches only THIS node's records; a remote endpoint's records can't be touched, and its subnet-registry rows decay via the epoch-lease eviction (REQ-HAZARD-REGISTRY-DECAY). Removes: (1) the perch dir TREE recursively — owlery// incl every nested {id}-psyche / {id}-w* / shells child (info.json, ready marker, sessions.log ledger, spool.db, inbox, .idle/.more-done sentinels, auth token); (2) the registry address (registry::unregister_address); (3) the context store — ContextStore::remove_endpoint(id): the a- branch+worktree + the / rows from every p- branch (the same fn `fork --delete-source` already uses); (4) node-local trust rows keyed on the id — access.json + visibility.json. Reuse-heavy: it is `fork --delete-source` generalized (recursive perch remove + unregister + remove_endpoint) + the trust-record cleanup; `endpoint rename` already enumerates the same record set + uses the same offline-only gate. (v0.12.0) traceability Quality audit (advisory) 2026-06-21T07:19:09.8719693Z - Required stages: doc, impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8719727Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8719825Z ### REQ-READY-AGENT-RESUME traceability Quality audit (advisory) 2026-06-21T07:19:09.8723224Z - Title: An offline ReadyAgent shows in `spt endpoint run`'s picker Resume-from-history and resumes correctly — closing the gap that today only LiveAgents do. ROOT: a harness-hosted ready bind (ReadyAgent::start_homed, ready.rs) writes info.json DIRECTLY and never appends the session ledger (unlike the shared establish_perch:250 live path), so a ready agent — though it has a session_id — produces ZERO ledger rows → the picker's offline+local Resume-from-history (which gates on ledger rows) never offers it. FIX (1): ledger the ready bind (ReadyAgent::start_homed → sessions::append Boot, mirroring establish_perch). FIX (2): `spt endpoint run --resume ` honors the adapter MANIFEST's endpoint TYPE — a ReadyAgent manifest (no [session.psyche_init]) resumes as a ready endpoint (poll listener, NO psyche-host); a LiveAgent (with psyche_init) as live. NO new bringup mode + NO picker changes (operator 2026-06-18): `spt endpoint run` is the spt-hosted ENDPOINT bringup for BOTH types, the type IS the adapter-manifest's concern (psyche-host already keys on psyche_init presence) — so (2) likely already holds; VERIFY at code, build only the residual. (v0.12.0) traceability Quality audit (advisory) 2026-06-21T07:19:09.8723471Z - Required stages: doc, impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8723509Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8723615Z ### REQ-PICKER-ADAPTER-DESCRIPTION traceability Quality audit (advisory) 2026-06-21T07:19:09.8724987Z - Title: The Create-new adapter-CHOICE screen of `spt endpoint run`'s picker shows a right-hand Description panel (like the Pick-existing endpoint picker's two-pane) surfacing per-adapter detail: install date, last-updated, adapter TYPE / the endpoint types it hosts, and the adapter description — so the user can see WHAT each adapter is before choosing it (today the selector lists bare names). DEFERRED fast-follow to v0.12.0 (operator 2026-06-18). (post-v0.12.0) traceability Quality audit (advisory) 2026-06-21T07:19:09.8725084Z - Required stages: traceability Quality audit (advisory) 2026-06-21T07:19:09.8725113Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8725222Z ### REQ-HAZARD-VIEWER-ISOLATION traceability Quality audit (advisory) 2026-06-21T07:19:09.8727316Z - Title: A slow / dead / hostile VIEWER must NEVER stall the controller, the PTY child, or the session drain thread. The broker drain fans output to the controller on the authoritative blocking bounded path (advances delivered_through) but to each viewer via a bounded per-viewer channel with a dedicated writer thread; the drain `try_send`s under the log lock and a viewer whose bounded queue OVERFLOWS (can't keep up) is EVICTED (queue dropped, writer thread ends, removed from the viewers map) — the drain thread NEVER touches a viewer socket, so no viewer write can backpressure or block it. A soft viewer cap bounds the thread count. Viewer eviction never perturbs the controller stream, the delivered_through cursor, or the child. traceability Quality audit (advisory) 2026-06-21T07:19:09.8727422Z - Required stages: unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8727459Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8727555Z ### REQ-INSTALL-1 traceability Quality audit (advisory) 2026-06-21T07:19:09.8727732Z - Title: Two install paths; signed one-line script; OS-service registration traceability Quality audit (advisory) 2026-06-21T07:19:09.8727835Z - Required stages: doc, impl, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8727874Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8727955Z ### REQ-INSTALL-2 traceability Quality audit (advisory) 2026-06-21T07:19:09.8728154Z - Title: Marketplace-repackaging-friendly install traceability Quality audit (advisory) 2026-06-21T07:19:09.8728254Z - Required stages: doc traceability Quality audit (advisory) 2026-06-21T07:19:09.8728292Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8728388Z ### REQ-INSTALL-3 traceability Quality audit (advisory) 2026-06-21T07:19:09.8728507Z - Title: Idempotent + interactive-optional first run traceability Quality audit (advisory) 2026-06-21T07:19:09.8728602Z - Required stages: impl, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8728636Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8728717Z ### REQ-INSTALL-4 traceability Quality audit (advisory) 2026-06-21T07:19:09.8729432Z - Title: Adapter registration lifecycle: spt adapter add (--github, manifest-first, install-is-first-update) + soft-deregister remove + optional manifest uninstall template; node-local registered-adapter set self-update ripples over traceability Quality audit (advisory) 2026-06-21T07:19:09.8729546Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8729575Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8729653Z ### REQ-MIGRATE-1 traceability Quality audit (advisory) 2026-06-21T07:19:09.8729813Z - Title: Auto-detect and migrate a legacy claude_skill_owl install traceability Quality audit (advisory) 2026-06-21T07:19:09.8729905Z - Required stages: traceability Quality audit (advisory) 2026-06-21T07:19:09.8729934Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8730019Z ### REQ-INFRA-1 traceability Quality audit (advisory) 2026-06-21T07:19:09.8730185Z - Title: GitHub issue tracking for v1; tangled.org as migration target traceability Quality audit (advisory) 2026-06-21T07:19:09.8730375Z - Required stages: traceability Quality audit (advisory) 2026-06-21T07:19:09.8730414Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8730508Z ### REQ-INSTALL-5 traceability Quality audit (advisory) 2026-06-21T07:19:09.8730965Z - Title: Non-interactive install path: the canonical one-liner doubles as every adapter's pack-in on-demand install (no second mechanism); sha256-verified fetch; user-PATH registration traceability Quality audit (advisory) 2026-06-21T07:19:09.8731059Z - Required stages: impl, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8731092Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8731188Z ### REQ-INSTALL-9 traceability Quality audit (advisory) 2026-06-21T07:19:09.8732375Z - Title: Adapter add from a GitHub release archive: `spt adapter add --release [--tag ] [--asset ]` fetches a `.spt` tar asset over HTTPS+GitHub trust, extracts it to the durable adapters/_github home, and registers the root — ships built binaries source-free and versioned (the distribution path for an adapter whose dev repo is a monorepo subdir, where --github root-only clone does not fit) traceability Quality audit (advisory) 2026-06-21T07:19:09.8732491Z - Required stages: doc, impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8732529Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8732628Z ### REQ-INSTALL-10 traceability Quality audit (advisory) 2026-06-21T07:19:09.8733851Z - Title: Windows at-logon autostart runs the daemon in the background with no persistent window: the scheduled task launches `spt daemon start` (which spawn_detaches a console-less DETACHED_PROCESS daemon and exits) rather than the foreground `spt daemon run` — Task Scheduler's interactive ONLOGON launch of a long-lived console process otherwise leaves a visible console window for the daemon's whole lifetime (v0.7.4) traceability Quality audit (advisory) 2026-06-21T07:19:09.8733955Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8733993Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8734074Z ### REQ-INSTALL-11 traceability Quality audit (advisory) 2026-06-21T07:19:09.8735815Z - Title: Adapter command templates resolve their program against the adapter's install dir BEFORE PATH: a `.spt`-shipped binary (dropped to adapters/_github// by --release/--github acquisition, or kept in the source_dir under copy-mode where only manifest+strings/ are copied to adapters/) runs without any PATH placement — a bare-name template token (e.g. `claude-spt-digest ...`) is rewritten to /(.exe on Windows) when that file exists, else left bare for the PATH fallback. Makes a `.spt` self-contained (closes the --release bundled-binary gap perri confirmed) (v0.7.4) traceability Quality audit (advisory) 2026-06-21T07:19:09.8735923Z - Required stages: doc, impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8735956Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8736042Z ### REQ-INSTALL-12 traceability Quality audit (advisory) 2026-06-21T07:19:09.8738583Z - Title: Durable active-profile pointer for bind-time profile selection (ADR-0021): adapters/active-profiles.toml at the registry ROOT (sibling to the per-adapter / dirs, so adapter add/update/remove — which only rewrite a / subdir — can never clobber it), a flat host_binary → "adapter[:profile]" map. Read at bind as the PRIMARY profile selector; unset → the registered_at_ms fallback (REQ-START-5). Written ONLY by `spt adapter use [:profile]` (resolves the adapter's host_binaries → sets each binary→adapter[:profile]); `spt adapter use --clear ` drops. NEVER auto-written by install/update/adapter add (that is precisely what would let an update silently flip the active profile). A stale pointer (uninstalled adapter / deleted profile) self-heals: ignored, fall back, warn once. Pruned on adapter remove. Atomic write (spt_store atomic). (v0.9.0) traceability Quality audit (advisory) 2026-06-21T07:19:09.8738819Z - Required stages: doc, impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8738847Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8738924Z ### REQ-REL-1 traceability Quality audit (advisory) 2026-06-21T07:19:09.8739377Z - Title: spt-releases publish-target repo: README public face, licensing split, Pages docs at the permanent lapse-proof canonical URL (ADR-0014) traceability Quality audit (advisory) 2026-06-21T07:19:09.8739486Z - Required stages: doc, impl traceability Quality audit (advisory) 2026-06-21T07:19:09.8739521Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8739611Z ### REQ-REL-2 traceability Quality audit (advisory) 2026-06-21T07:19:09.8740063Z - Title: Release asset set consumable by the self-updater: platform binaries, SHA256SUMS, SignedRelease metadata, manifest schema, mock-adapter zip; tag-triggered cross-repo pipeline traceability Quality audit (advisory) 2026-06-21T07:19:09.8740174Z - Required stages: impl, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8740302Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8740378Z ### REQ-REL-3 traceability Quality audit (advisory) 2026-06-21T07:19:09.8740799Z - Title: Two-key release-signing trust anchor: primary + offline never-used recovery, both pubkeys embedded in the binary's trusted set, manual local signing (ADR-0015) traceability Quality audit (advisory) 2026-06-21T07:19:09.8740899Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8740936Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8741026Z ### REQ-DOCS-1 traceability Quality audit (advisory) 2026-06-21T07:19:09.8741216Z - Title: Dual-audience docs (human + AI dev-agent), markdown once / two depths traceability Quality audit (advisory) 2026-06-21T07:19:09.8741314Z - Required stages: doc, impl traceability Quality audit (advisory) 2026-06-21T07:19:09.8741348Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8741434Z ### REQ-DOCS-2 traceability Quality audit (advisory) 2026-06-21T07:19:09.8741587Z - Title: Sub-10-minute runnable killer quickstart per audience traceability Quality audit (advisory) 2026-06-21T07:19:09.8741676Z - Required stages: doc, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8741709Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8741801Z ### REQ-DOCS-3 traceability Quality audit (advisory) 2026-06-21T07:19:09.8741967Z - Title: Diátaxis structure; one canonical way to do X traceability Quality audit (advisory) 2026-06-21T07:19:09.8742073Z - Required stages: doc traceability Quality audit (advisory) 2026-06-21T07:19:09.8742107Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8742206Z ### REQ-DOCS-4 traceability Quality audit (advisory) 2026-06-21T07:19:09.8742378Z - Title: Agent-consumable layer (llms.txt, manifest schema, MCP, CLI help) traceability Quality audit (advisory) 2026-06-21T07:19:09.8742487Z - Required stages: doc, impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8742521Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8742606Z ### REQ-DOCS-5 traceability Quality audit (advisory) 2026-06-21T07:19:09.8742779Z - Title: Anti-drift: rustdoc/schema/exports/CLI-help generated + CI-checked traceability Quality audit (advisory) 2026-06-21T07:19:09.8742874Z - Required stages: impl, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8742897Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8743002Z ### REQ-HAZARD-GRACE-BEFORE-SIGNOFF traceability Quality audit (advisory) 2026-06-21T07:19:09.8743174Z - Title: Grace-period wait completes before composing INIT_SIGNOFF (1.1) traceability Quality audit (advisory) 2026-06-21T07:19:09.8743269Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8743303Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8743414Z ### REQ-HAZARD-INFO-JSON-TORN-READ traceability Quality audit (advisory) 2026-06-21T07:19:09.8743555Z - Title: State-file reads tolerate concurrent writes (1.2) traceability Quality audit (advisory) 2026-06-21T07:19:09.8743662Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8743700Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8743803Z ### REQ-HAZARD-STALE-INDEX-LOCK traceability Quality audit (advisory) 2026-06-21T07:19:09.8743935Z - Title: Sweep stale lockfiles on daemon boot (1.3) traceability Quality audit (advisory) 2026-06-21T07:19:09.8744041Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8744074Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8744172Z ### REQ-HAZARD-DEFERRED-DRAIN traceability Quality audit (advisory) 2026-06-21T07:19:09.8744344Z - Title: Deferred spool rows excluded from the event-stream drain (1.4) traceability Quality audit (advisory) 2026-06-21T07:19:09.8744444Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8744472Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8744572Z ### REQ-HAZARD-WORKER-PATH traceability Quality audit (advisory) 2026-06-21T07:19:09.8744735Z - Title: Single source of truth for Worker/Psyche perch location (1.5) traceability Quality audit (advisory) 2026-06-21T07:19:09.8744834Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8744868Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8744984Z ### REQ-HAZARD-PARENT-PID-PREFER traceability Quality audit (advisory) 2026-06-21T07:19:09.8745158Z - Title: Prefer stable parent PID / broker handle over ephemeral PID (2.1) traceability Quality audit (advisory) 2026-06-21T07:19:09.8745240Z - Required stages: traceability Quality audit (advisory) 2026-06-21T07:19:09.8745278Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8745493Z ### REQ-HAZARD-STDIN-SESSION-ID traceability Quality audit (advisory) 2026-06-21T07:19:09.8745618Z - Title: Stdin session_id precedence over env (2.2) traceability Quality audit (advisory) 2026-06-21T07:19:09.8745721Z - Required stages: traceability Quality audit (advisory) 2026-06-21T07:19:09.8745755Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8745859Z ### REQ-HAZARD-HANDOFF-ARGV-COMPAT traceability Quality audit (advisory) 2026-06-21T07:19:09.8746008Z - Title: Broker/brain IPC + handoff argv version-tolerant (2.3) traceability Quality audit (advisory) 2026-06-21T07:19:09.8746112Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8746146Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8746242Z ### REQ-HAZARD-GEN-START-NOW traceability Quality audit (advisory) 2026-06-21T07:19:09.8746370Z - Title: gen_start = now() on cold-start and handoff (2.4) traceability Quality audit (advisory) 2026-06-21T07:19:09.8746464Z - Required stages: impl, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8746497Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8746598Z ### REQ-HAZARD-EPHEMERAL-CLEANUP traceability Quality audit (advisory) 2026-06-21T07:19:09.8746744Z - Title: Ephemeral perch cleanup on every ring exit path (3.1) traceability Quality audit (advisory) 2026-06-21T07:19:09.8746829Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8746858Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8746968Z ### REQ-HAZARD-STALE-SIGNOFF-SENTINEL traceability Quality audit (advisory) 2026-06-21T07:19:09.8747119Z - Title: Stale signoff sentinel does not kill a fresh start (3.2) traceability Quality audit (advisory) 2026-06-21T07:19:09.8747221Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8747325Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8747430Z ### REQ-HAZARD-ECHO-BEFORE-SIGNOFF traceability Quality audit (advisory) 2026-06-21T07:19:09.8747597Z - Title: Echo-commune fires before INIT_SIGNOFF on orphan teardown (3.3) traceability Quality audit (advisory) 2026-06-21T07:19:09.8747693Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8747721Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8747831Z ### REQ-HAZARD-ENVELOPE-DECODE-ORDER traceability Quality audit (advisory) 2026-06-21T07:19:09.8747974Z - Title: Envelope decode order, ampersand decoded last (4.1) traceability Quality audit (advisory) 2026-06-21T07:19:09.8748073Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8748112Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8748218Z ### REQ-HAZARD-ENVELOPE-CR-LINESAFE traceability Quality audit (advisory) 2026-06-21T07:19:09.8749994Z - Title: Envelope CR-linesafety (4.1): the line-framed EVENT codec must neutralize raw carriage returns — `event_body_escape` folds CRLF/lone-CR to the codec's representable linebreak (`\n`→`
`) BEFORE framing, so a body carrying `\r` (Windows `echo`/CRLF text crossing nodes) cannot survive into the single-line envelope and trigger a receiver terminal CR→col0 overwrite that corrupts the frame. Robustness on unrepresentable input, NOT a wire-format change (decoder untouched, amp-last invariant held). Belt-and-suspenders: `spt send`/`ring` also trim stdin (parity with `notify`). traceability Quality audit (advisory) 2026-06-21T07:19:09.8750109Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8750138Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8750243Z ### REQ-HAZARD-ENVELOPE-PARSER-SAFE traceability Quality audit (advisory) 2026-06-21T07:19:09.8750400Z - Title: Two-slice envelope parser is panic-free and tolerant (4.2) traceability Quality audit (advisory) 2026-06-21T07:19:09.8750496Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8750528Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8750632Z ### REQ-HAZARD-EVENTPART-REASSEMBLY traceability Quality audit (advisory) 2026-06-21T07:19:09.8750829Z - Title: EVENT-PART split/reassembly is byte-exact; orphan parts dropped silently traceability Quality audit (advisory) 2026-06-21T07:19:09.8750929Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8750957Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8751059Z ### REQ-HAZARD-ID-CHARSET traceability Quality audit (advisory) 2026-06-21T07:19:09.8751316Z - Title: Addressable-id charset reserves :/@ delimiters; validated at every creation seam (4.6) traceability Quality audit (advisory) 2026-06-21T07:19:09.8751421Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8751459Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8751567Z ### REQ-HAZARD-REGISTRY-STALE-CLEAN traceability Quality audit (advisory) 2026-06-21T07:19:09.8751738Z - Title: Stale registry entries degrade to fallback, never hard-fail (4.3) traceability Quality audit (advisory) 2026-06-21T07:19:09.8751832Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8751860Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8751964Z ### REQ-HAZARD-REGISTRY-CONCURRENT traceability Quality audit (advisory) 2026-06-21T07:19:09.8752198Z - Title: Concurrent SQLite openers (registry/spool) must not fail with 'database is locked' (4.7) traceability Quality audit (advisory) 2026-06-21T07:19:09.8752294Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8752328Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8752432Z ### REQ-HAZARD-REGISTRY-DIR-CREATE traceability Quality audit (advisory) 2026-06-21T07:19:09.8752795Z - Title: SQLite store opens create their parent dir themselves — a fresh-home registry op must not SQLITE_CANTOPEN (4.9) traceability Quality audit (advisory) 2026-06-21T07:19:09.8752899Z - Required stages: doc, impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8752933Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8753161Z ### REQ-HAZARD-REGISTRY-EPOCH-LEASE traceability Quality audit (advisory) 2026-06-21T07:19:09.8753582Z - Title: Registry merge ordered by per-node monotonic epoch, never wall-clock — a stale Active can't clobber a newer Offline (4.8, red-team #8) traceability Quality audit (advisory) 2026-06-21T07:19:09.8753692Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8753724Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8753829Z ### REQ-HAZARD-DEFERRED-SURVIVE-DRAIN traceability Quality audit (advisory) 2026-06-21T07:19:09.8753955Z - Title: Deferred rows survive poll drain (4.4) traceability Quality audit (advisory) 2026-06-21T07:19:09.8754048Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8754081Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8754187Z ### REQ-HAZARD-INBOX-NO-DOUBLE traceability Quality audit (advisory) 2026-06-21T07:19:09.8754312Z - Title: No double-delivery via legacy inbox (4.5) traceability Quality audit (advisory) 2026-06-21T07:19:09.8754415Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8754448Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8754553Z ### REQ-HAZARD-WINDOWS-PID-RECYCLE traceability Quality audit (advisory) 2026-06-21T07:19:09.8754690Z - Title: Windows PID-recycling false positives guarded (5.1) traceability Quality audit (advisory) 2026-06-21T07:19:09.8754789Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8754817Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8754909Z ### REQ-HAZARD-EBUSY-RENAME traceability Quality audit (advisory) 2026-06-21T07:19:09.8755070Z - Title: tmp-write + atomic-rename + retry on Windows EBUSY (5.2) traceability Quality audit (advisory) 2026-06-21T07:19:09.8755267Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8755304Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8755404Z ### REQ-HAZARD-SUBPROCESS-TIMEOUT traceability Quality audit (advisory) 2026-06-21T07:19:09.8755539Z - Title: Every harness/git subprocess has a timeout (5.3) traceability Quality audit (advisory) 2026-06-21T07:19:09.8755638Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8755672Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8755771Z ### REQ-HAZARD-UNC-PATH-STRIP traceability Quality audit (advisory) 2026-06-21T07:19:09.8755901Z - Title: Strip Windows UNC prefix on serialized paths (5.4) traceability Quality audit (advisory) 2026-06-21T07:19:09.8756005Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8756043Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8756149Z ### REQ-HAZARD-SINGLE-PATH-SOURCE traceability Quality audit (advisory) 2026-06-21T07:19:09.8756315Z - Title: Single path/registry source of truth; no layout ambiguity (6.1) traceability Quality audit (advisory) 2026-06-21T07:19:09.8756420Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8756449Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8756540Z ### REQ-HAZARD-SOFT-CLEANUP traceability Quality audit (advisory) 2026-06-21T07:19:09.8756725Z - Title: Soft-cleanup preserves state, removes only the ready marker (6.2) traceability Quality audit (advisory) 2026-06-21T07:19:09.8756832Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8756860Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8756963Z ### REQ-HAZARD-CASCADE-WIPE-GUARD traceability Quality audit (advisory) 2026-06-21T07:19:09.8757129Z - Title: No hard-delete of a parent hosting non-empty children (6.3) traceability Quality audit (advisory) 2026-06-21T07:19:09.8757224Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8757261Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8757365Z ### REQ-HAZARD-DROP-FILE-SINGLE-WRITER traceability Quality audit (advisory) 2026-06-21T07:19:09.8757509Z - Title: Drop files are daemon-owned single-writer (6.4) traceability Quality audit (advisory) 2026-06-21T07:19:09.8757609Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8757642Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8757751Z ### REQ-HAZARD-DIRECT-WRITE-PRECEDENCE traceability Quality audit (advisory) 2026-06-21T07:19:09.8757952Z - Title: Direct-write precedence marker (with node id) guards stale overwrite (6.5) traceability Quality audit (advisory) 2026-06-21T07:19:09.8758057Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8758091Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8758200Z ### REQ-HAZARD-CONFLICT-BOTH-PRESERVED traceability Quality audit (advisory) 2026-06-21T07:19:09.8758735Z - Title: A surfaced concurrent context pair is durably preserved (both versions, tracked artifacts) until a strictly dominating write clears it; no reconcile failure path discards an unmerged version (6.6, ADR-0013) traceability Quality audit (advisory) 2026-06-21T07:19:09.8758839Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8758877Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8759074Z ### REQ-HAZARD-DETACHED-PIPE-INHERIT traceability Quality audit (advisory) 2026-06-21T07:19:09.8760131Z - Title: Windows detached long-lived children must not inherit a captured caller's pipe: every detach-spawn of an immortal child (daemon, shell binary) runs bInheritHandles=FALSE, or a caller capturing output anywhere up the process chain hangs forever on a pipe that never EOFs — std-handle flag stripping is NOT sufficient (grandparent strays still flow) (5.6) traceability Quality audit (advisory) 2026-06-21T07:19:09.8760239Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8760278Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8760369Z ### REQ-HAZARD-CONPTY-DSR traceability Quality audit (advisory) 2026-06-21T07:19:09.8760568Z - Title: ConPTY reader must auto-answer DSR (ESC[6n) or all child output stalls (5.5) traceability Quality audit (advisory) 2026-06-21T07:19:09.8760774Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8760812Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8760917Z ### REQ-HAZARD-WIN-PTY-PROGRAM-RESOLVE traceability Quality audit (advisory) 2026-06-21T07:19:09.8762745Z - Title: Native-PTY spawn must resolve a bare program name with PATHEXT precedence and run a non-PE target through its interpreter: portable-pty's own `which` takes the FIRST PATH match — an extensionless shebang shim (e.g. a node CLI `ccs` shipped beside `ccs.cmd`) — and CreateProcessW then rejects the non-PE file with os error 193 ('not a valid Win32 application'); spt-term resolves the program itself (PATHEXT order prefers .EXE over .CMD; .cmd/.bat → cmd.exe /d /c, .ps1 → powershell -NoProfile -File) so a bare harness/shell [session.self] command actually launches on Windows. Unix is a passthrough (execve honours the shebang). traceability Quality audit (advisory) 2026-06-21T07:19:09.8762849Z - Required stages: doc, impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8762883Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8762983Z ### REQ-HAZARD-CHILD-CONSOLE-FLASH traceability Quality audit (advisory) 2026-06-21T07:19:09.8763398Z - Title: Console-subsystem children of the console-less daemon spawn with CREATE_NO_WINDOW, or each spawn flashes a visible blank window on the user's desktop (5.8) traceability Quality audit (advisory) 2026-06-21T07:19:09.8763594Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8763631Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8763736Z ### REQ-HAZARD-INSTANT-UNDERFLOW traceability Quality audit (advisory) 2026-06-21T07:19:09.8764275Z - Title: Scheduling never subtracts a Duration from Instant::now() (underflow-panics on a host booted more recently than the offset); 'due now / never run' is Option=None gated on forward duration_since only (5.9) traceability Quality audit (advisory) 2026-06-21T07:19:09.8764375Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8764408Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8764510Z ### REQ-HAZARD-PUMP-IPC-DEADLINE traceability Quality audit (advisory) 2026-06-21T07:19:09.8765306Z - Title: The single-threaded peer pump's brain-IPC reads are deadline-bounded (PUMP_PEER_IO_TIMEOUT, total-wait per call); a TimedOut read POISONS the client and escalates to a SUPERVISED RESTART, never a per-peer retry — a black-holed peer must never wedge the whole pump traceability Quality audit (advisory) 2026-06-21T07:19:09.8765411Z - Required stages: doc, impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8765440Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8765555Z ### REQ-HAZARD-BROKER-QUIC-DEADLINE traceability Quality audit (advisory) 2026-06-21T07:19:09.8768560Z - Title: The broker bounds every brain-waiting QUIC op (dial / open_stream / send_stream) so a black-holed or dead peer fails PROMPTLY with an ORDINARY error the broker REPLIES, never an unbounded await. The bound (< the brain's 30s PUMP_PEER_IO_TIMEOUT so the BROKER fires first) surfaces to the pump as a normal broker error reply → peer_outcome's non-TimedOut arm → drop conn + redial next tick, the round CONTINUES and the heartbeat keeps advancing — it must NEVER manifest as the brain's own read-deadline (the A-half poison → supervised-restart path REQ-HAZARD-PUMP-IPC-DEADLINE guards). Exactly-once is preserved: a timed-out journaled op fails INSIDE its apply_once closure so no phantom conn_id/stream_id is recorded and a fresh tick re-dials cleanly. The happy path is unchanged (a live peer completes with zero added latency; the bound only bites a non-responsive peer). This is the ROOT-cause cure for the 2.2h hfenduleam pump wedge — a dead roster peer whose QUIC path the broker awaited unbounded — recurring on hfenduleam 2026-06-16. traceability Quality audit (advisory) 2026-06-21T07:19:09.8768685Z - Required stages: doc, impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8768717Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8768822Z ### REQ-HAZARD-BROKER-SEED-WIRE-SKEW traceability Quality audit (advisory) 2026-06-21T07:19:09.8772508Z - Title: A daemon-state wire-format change (e.g. the v0.9.0 adapter-agnostic Seed) does NOT take effect until a DELIBERATE full broker restart: the broker serves the seed-control channel and is RESIDENT across a brain-only self-update (ADR-0004 no-terminate-during-update forbids auto-killing it), so a NEW-version CLI talking to a still-resident OLD broker fails the seed handshake — the old broker cannot deserialize the new Seed (its formerly-required `adapter` field is gone) and drops the conn without an ack, which surfaces to the CLI as a raw UnexpectedEof 'failed to fill whole buffer'. spt-core must (a) surface an ACTIONABLE diagnostic on that seed-ack EOF (name the stale-broker cause + the `spt daemon stop` fix — the broker restarts on the next api call), never the cryptic io error; and (b) document the operational rule (a deliberate broker restart is required on any daemon-state wire change — NOT automatic) + the FORWARD discipline (daemon-state/Seed schema changes stay additive + serde-default so a resident OLD broker tolerates a NEW CLI across a brain-only update; note this would NOT have rescued 0.9.0 itself, since the old broker's `adapter` was a required field). perri PREP-4 FINDING 1 (v0.9.0 CLI vs stale 0.8.x broker). traceability Quality audit (advisory) 2026-06-21T07:19:09.8772730Z - Required stages: doc, impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8772763Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8772858Z ### REQ-HAZARD-SUDO-SECURE-PATH traceability Quality audit (advisory) 2026-06-21T07:19:09.8773700Z - Title: Elevation guidance on Unix names the binary's ABSOLUTE path under sudo (a user-local install ~/.local/bin · ~/.cargo/bin is not on sudo's secure_path, so bare `sudo spt` dies 'command not found'); gated commands auto-elevate on an interactive TTY, else print the runnable hint (5.10) traceability Quality audit (advisory) 2026-06-21T07:19:09.8773929Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8773967Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8774063Z ### REQ-HAZARD-SELF-ELEVATE traceability Quality audit (advisory) 2026-06-21T07:19:09.8776214Z - Title: Self-elevation (REQ-ELEVATE-1) re-runs the EXACT original invocation with the binary's ABSOLUTE exe path — never widening privilege scope, never adding/altering args, never via a PATH-resolved bare name, never via a shell-interpolated command string (argv-array only, no `sh -c`); the elevated child drops state back to the user (composes with the 5.7 de-elevation) and NEVER re-elevates (loop-safe: decide_elevation_path returns AlreadyElevated whenever the process is already Elevated, on every OS). The user's UAC/polkit/sudo prompt is the only consent gate — we never bypass it; the print-hint floor prints the absolute-path command too. The unprivileged parent never depends on (pipes/captures) the privileged child's stdout. traceability Quality audit (advisory) 2026-06-21T07:19:09.8776315Z - Required stages: unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8776339Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8776434Z ### REQ-HAZARD-LOCAL-API-AUTH traceability Quality audit (advisory) 2026-06-21T07:19:09.8776654Z - Title: Every local `api` mutation authenticated to an endpoint/session (codex #13) traceability Quality audit (advisory) 2026-06-21T07:19:09.8776763Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8776788Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8776891Z ### REQ-HAZARD-RESTART-IDEMPOTENT traceability Quality audit (advisory) 2026-06-21T07:19:09.8777140Z - Title: Idempotent/exactly-once delivery across brain restart at every broker boundary (codex #14) traceability Quality audit (advisory) 2026-06-21T07:19:09.8777240Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8777279Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8777379Z ### REQ-HAZARD-UPDATE-ROLLBACK traceability Quality audit (advisory) 2026-06-21T07:19:09.8777622Z - Title: Self-update rejects version rollback; metadata expiry + adapter content signing (codex #5) traceability Quality audit (advisory) 2026-06-21T07:19:09.8777717Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8777754Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8777865Z ### REQ-HAZARD-DAEMON-HOSTED-LIVENESS traceability Quality audit (advisory) 2026-06-21T07:19:09.8778249Z - Title: Daemon-hosted perches (Psyche, spt-hosted Self) derive liveness from the daemon endpoint table + info.json status, never is_process_alive(info.pid) (2.5) traceability Quality audit (advisory) 2026-06-21T07:19:09.8778358Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8778391Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8778500Z ### REQ-HAZARD-BROKER-PROCESS-ISOLATION traceability Quality audit (advisory) 2026-06-21T07:19:09.8781093Z - Title: Broker and brain are separate processes: the broker runs as its own long-lived per-machine process that survives every brain restart, so a routine (brain-only) self-update restarts the brain onto the swapped binary while every hosted endpoint (PTY child, live QUIC conn, listening socket) stays untouched at the PROCESS level. The in-process-thread broker (daemon.rs:165-170) is a regression that silently unrealizes REQ-UPD-3 — apply degrades to an in-process Brain::handoff no-op and new code does not run until an unrelated restart (KNOWN-HAZARDS 6.7). Evidence must prove process-level survival (SPIKE-01/03 productionized as int: PTY child + live QUIC survive a brain-PROCESS restart onto a swapped binary), re-pointing the regression-masked in-process int tags currently on REQ-DAEMON-2 / REQ-UPD-3 (ADR-0018). traceability Quality audit (advisory) 2026-06-21T07:19:09.8781308Z - Required stages: doc, impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8781346Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8781451Z ### REQ-HAZARD-ROLLBACK-STATE-COMPAT traceability Quality audit (advisory) 2026-06-21T07:19:09.8783092Z - Title: A brain must not irreversibly migrate durable state before update ready-promotion: the readiness-gated auto-rollback (ADR-0018 Q7) spawns the N-1 binary against durable state the new brain may have written, so every pre-ready write must stay N-1-readable (schema migrations gated behind ready-promotion, or written N-1-tolerant/additive). Else the first in-place schema migration silently bricks rollback (KNOWN-HAZARDS 6.8). Free now — a 2026-06-09 audit confirmed zero state-migration code exists; unmintable retroactively once a migration ships. traceability Quality audit (advisory) 2026-06-21T07:19:09.8783191Z - Required stages: doc, impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8783229Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8783337Z ### REQ-HAZARD-BRAIN-RESPAWN-PATH traceability Quality audit (advisory) 2026-06-21T07:19:09.8785734Z - Title: The broker respawns the brain onto the APPLIED bytes, not the renamed old binary: the candidate-binary default is the canonical exe path captured ONCE at broker start, never a per-spawn std::env::current_exe() — on Linux current_exe (readlink /proc/self/exe) is inode-tracking and follows the `apply` rename (spt -> spt.old-N), so a resident broker would respawn the brain onto OLD bytes while recording `applied` (Windows GetModuleFileName is path-at-start, so Windows was green; ADR-0018 Q3 silently assumed path-string semantics). Backstop: promotion gates on bytes — a trial promotes only if brain.ready exe_hash == the staged artifact hash for this platform, else auto-rollback + loud notif (readiness != new-bytes was the false-success that recorded applied:8 over a v0.4.0 brain on kitsubito, 2026-06-11). KNOWN-HAZARDS 6.11. traceability Quality audit (advisory) 2026-06-21T07:19:09.8785936Z - Required stages: doc, impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8785973Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8786082Z ### REQ-HAZARD-PSYCHE-OUTBOUND-PROXY traceability Quality audit (advisory) 2026-06-21T07:19:09.8786841Z - Title: Psyche outbound captured + sanitized: the live-Psyche turn driver captures stdout (never Stdio::null), and the daemon strips/re-stamps Psyche-supplied from=/target and constrains routing (reply→__REPLY_TO__ sender, notify→own user/subnet) (7.3) traceability Quality audit (advisory) 2026-06-21T07:19:09.8786947Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8786985Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8787094Z ### REQ-HAZARD-DAEMON-SCHED-NONBLOCKING traceability Quality audit (advisory) 2026-06-21T07:19:09.8787714Z - Title: Per-agent pulse/psyche/echo-commune scheduling must not serialize across agents: each agent's bounded LLM call (echo-commune summarizer, Psyche turn) runs off the shared scheduler so one slow/hung call cannot stall another agent's tick (7.4) traceability Quality audit (advisory) 2026-06-21T07:19:09.8787800Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8787829Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8787944Z ### REQ-HAZARD-PAIR-TRANSCRIPT-BIND traceability Quality audit (advisory) 2026-06-21T07:19:09.8788574Z - Title: Pairing transcript binds roles, both node pubkeys, subnet ID, seed epoch, TOTP time-step, and confirmation MACs — or unknown-key-share/reflection/wrong-subnet/replay pairing remain possible (ADR-0005 #12) traceability Quality audit (advisory) 2026-06-21T07:19:09.8788681Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8788715Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8788819Z ### REQ-HAZARD-PAIR-SEED-ROTATION traceability Quality audit (advisory) 2026-06-21T07:19:09.8789398Z - Title: Removing a node rotates the subnet seed (epoch bump) so an old node/old seed cannot rejoin; trust-store delete alone is NOT revocation because the seed is replicated to every trusted node (ADR-0005 #10) traceability Quality audit (advisory) 2026-06-21T07:19:09.8789505Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8789528Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8789641Z ### REQ-HAZARD-PAIR-RATE-LIMIT traceability Quality audit (advisory) 2026-06-21T07:19:09.8790487Z - Title: Subnet-global pairing rate limit: one active ceremony per subnet, shared attempt counter, exponential backoff — a public pre-trust relay + multiple seed-holders otherwise enables distributed SPAKE2 guessing (and ±1 TOTP window triples the valid-password space) (ADR-0005 #11) traceability Quality audit (advisory) 2026-06-21T07:19:09.8790586Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8790735Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8790829Z ### REQ-HAZARD-WAN-ORIGIN-AUTH traceability Quality audit (advisory) 2026-06-21T07:19:09.8791614Z - Title: WAN-inbound origin is transport truth, never payload: the access gate's subject (ADR-0009 origin-node whitelist) is the QUIC handshake-proven remote node id from the broker's conn/stream table — a forged origin/node field inside record bytes is inert (7.5) traceability Quality audit (advisory) 2026-06-21T07:19:09.8791725Z - Required stages: doc, impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8791754Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8791839Z ### REQ-CONSENT-1 traceability Quality audit (advisory) 2026-06-21T07:19:09.8792707Z - Title: Consent grant store: capability x subject-agent x target-node rows, enforced at the target node, subnet-settable (replicates as security material near the trust store), revocable; gated-capability ids (remote-exec, instantiate-anywhere) reserved-but-refusing; v1 consumers are the shell spawn gates (CONTEXT Consent & security gates) traceability Quality audit (advisory) 2026-06-21T07:19:09.8792817Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8792854Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8792951Z ### REQ-CONSENT-2 traceability Quality audit (advisory) 2026-06-21T07:19:09.8793736Z - Title: Interactive consent escalation: an ungated high-risk action routes a consent prompt to the user's most-recently-active session; allow-once / allow-always (writes a grant) / deny; pre-consent flags (can_shutdown, shell_wake_spawn_anywhere) author grants via manifest/settings (CONTEXT Consent & security gates) traceability Quality audit (advisory) 2026-06-21T07:19:09.8793936Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8793970Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8794049Z ### REQ-PRES-1 traceability Quality audit (advisory) 2026-06-21T07:19:09.8795355Z - Title: Presence resolution: the presence datum (last_active_node, last_active_endpoint, ts) gossiped subnet-wide via the agent-interaction heartbeat (rides registry distribution, visibility-gated) + one first-class most-recently-active resolution API consumed by notif first-fire, update-consent delivery, consent escalation, and shell wake resolution (M5 scope decision 1: resolution only — the PresenceChannel endpoint stays deferred) traceability Quality audit (advisory) 2026-06-21T07:19:09.8795459Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8795503Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8795589Z ### REQ-SHELL-1 traceability Quality audit (advisory) 2026-06-21T07:19:09.8796433Z - Title: Shell hosting machinery: shell perch under the owner (type/owner/adapter_name/status/alias), broker-launched binary + api bind local-link handshake, the three channels (command durable, text+file durable + progress-queryable, sensory REST-only never spooled + dropped-unless-owner-live), owner exclusivity (CONTEXT Shell model) traceability Quality audit (advisory) 2026-06-21T07:19:09.8796533Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8796571Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8796661Z ### REQ-SHELL-2 traceability Quality audit (advisory) 2026-06-21T07:19:09.8798084Z - Title: Shell sleep/wake: link-break always closes the binary (pre-close instruction + termination timeout), ephemeral teardown vs persistent offline/relink, wake_command wake-watcher (offline-only, exit-opcode supervision, exponential backoff + give-up), state-keyed wake resolution (dormant/suspended/active-elsewhere; no-reachable refuses — spawn-anywhere branch deferred), spt shutdown owner cascade + api owner-shutdown gated by can_shutdown (CONTEXT Shell sleep/wake) traceability Quality audit (advisory) 2026-06-21T07:19:09.8798184Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8798208Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8798312Z ### REQ-HAZARD-ELEVATED-DAEMON-SPAWN traceability Quality audit (advisory) 2026-06-21T07:19:09.8799634Z - Title: The daemon always runs unelevated in the invoking user's universe, regardless of which command spawns it: an elevated spawner de-elevates (Windows: UAC linked token via CreateProcessWithTokenW; Linux: drop to SUDO_UID/SUDO_GID + the invoker's HOME) — an elevated daemon's pipes deny unelevated clients (every later spt reads not-running→spawn→bind Access-denied) and a sudo'd daemon roots the user's state universe (5.7) traceability Quality audit (advisory) 2026-06-21T07:19:09.8799730Z - Required stages: doc, impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8799764Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8799868Z ### REQ-HAZARD-REGISTRY-GHOST-ROWS traceability Quality audit (advisory) 2026-06-21T07:19:09.8801118Z - Title: A dead node identity's registry rows must decay: only the per-(endpoint,node) epoch lease supersedes rows, so without eviction a vanished node's rows are immortal and poison bare-id resolution with phantom AcrossNodes ambiguity — evict rows whose author node has not been heard (admitted inbound feed) within the eviction window; own rows never decay; a revived node re-inserts from its durable epoch within one pump cadence (4.10) traceability Quality audit (advisory) 2026-06-21T07:19:09.8801408Z - Required stages: doc, impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8801441Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8801528Z ### REQ-CLI-1 traceability Quality audit (advisory) 2026-06-21T07:19:09.8802532Z - Title: spt endpoint noun namespace: absorbs fork/suspend/wake/shutdown/rename/stop/digest + access (ported 1:1: allow|revoke|open|list, decision 21) + description (ex-resources blurb; bare=show, set=author); merged endpoint list [--local|--subnet ] grouped by subnet with SELF pinned, --detail adding the ex-resources yellow-pages blurb projection; bare spt endpoint = the list (M8 decisions 1-2, 25) traceability Quality audit (advisory) 2026-06-21T07:19:09.8802629Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8802666Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8802747Z ### REQ-CLI-2 traceability Quality audit (advisory) 2026-06-21T07:19:09.8803419Z - Title: spt daemon noun: run|stop|status (hidden daemon verb becomes daemon run; agent-endpoint shutdown keeps its name under endpoint); daemon status renders the pump heartbeat (last-tick recency) so a half-dead daemon is never rendered implied-healthy (M8 decisions 5, 23) traceability Quality audit (advisory) 2026-06-21T07:19:09.8803530Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8803564Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8803653Z ### REQ-CLI-3 traceability Quality audit (advisory) 2026-06-21T07:19:09.8804339Z - Title: Agent hot path stays flat across the M8 reorg: send/ring/ready/whoami/how-to unchanged; notify moves to subnet notify while notif stays top-level; breaking renames land clean with no deprecation shims (zero external CLI consumers pre-spt-claude-code) (M8 decisions 3-4, 9) traceability Quality audit (advisory) 2026-06-21T07:19:09.8804448Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8804486Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8804567Z ### REQ-CLI-4 traceability Quality audit (advisory) 2026-06-21T07:19:09.8806592Z - Title: User-facing CLI output is human-readable: DIRECT-USER commands (e.g. adapter update/list/use) render friendly prose instead of raw CODE:RESULT markers — "claude-spt is up to date (0.2.0)." not "ADAPTER_UPDATE_UPTODATE:claude-spt: installed 0.2.0, latest 0.2.0". Strictly bounded to the direct-user surface: the adapter-PARSED bringup tokens (SEEDED/BOUND/READY/NO_SEED on seed/listen, which adapters grep) stay machine-parseable — humanization is additive (a human line beside the marker, or a --porcelain/--quiet split), never a silent rename of a dual-contract marker. The user-facing bringup composition belongs to the adapter (perri); this REQ owns only the direct-user CLI surface. (v0.9.0) traceability Quality audit (advisory) 2026-06-21T07:19:09.8806698Z - Required stages: traceability Quality audit (advisory) 2026-06-21T07:19:09.8806731Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8806826Z ### REQ-SUBNET-5 traceability Quality audit (advisory) 2026-06-21T07:19:09.8807904Z - Title: Per-subnet serve-state: spt subnet detach [--save] / attach [--save] — daemon keeps running, stops/starts advertising + connecting for that subnet (peer pump + responder selective); --save persists the startup default in daemon config; the all-attached banner gains per-subnet states (M8 decision 6, --save renamed from --auto per decision 25 session) traceability Quality audit (advisory) 2026-06-21T07:19:09.8808015Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8808053Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8808144Z ### REQ-SUBNET-6 traceability Quality audit (advisory) 2026-06-21T07:19:09.8808801Z - Title: Trust lifecycle verbs, elevation-gated: spt subnet leave (membership exit) and spt subnet prune (removes a dead identity's trust + registry rows, killing its dead dials; trust mutation = security surface, REQ-PAIR-6 gate machinery) (M8 decisions 6-7) traceability Quality audit (advisory) 2026-06-21T07:19:09.8808906Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8809026Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8809111Z ### REQ-SUBNET-7 traceability Quality audit (advisory) 2026-06-21T07:19:09.8810706Z - Title: Per-machine re-pair trust overwrite: registry rows carry a hashed stable machine identifier (OS machine id /etc/machine-id|MachineGuid, domain-separated SHA-256 before gossip, spt-minted persisted UUID fallback; additive serde-default field — old rows parse clean); a COMPLETED pairing ceremony presenting the same node label AND machine id as an existing trusted row evicts the superseded identity's trust + registry rows on the seed-holder and replicates the eviction; a gossiped claim alone never evicts trust (M8 decisions 13, 22) traceability Quality audit (advisory) 2026-06-21T07:19:09.8811005Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8811039Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8811133Z ### REQ-SUBNET-8 traceability Quality audit (advisory) 2026-06-21T07:19:09.8812208Z - Title: Status render honesty: zero-subnet text is daemon-aware ('No subnets registered — this node is standalone.' + daemon-running-dependent blurb, never implying messaging works while the daemon is down); hint footer prints on bare spt subnet only (status drops it); a stalled pump is surfaced in subnet status, never rendered implied-healthy (M8 decisions 11-12, 23) traceability Quality audit (advisory) 2026-06-21T07:19:09.8812316Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8812350Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8812437Z ### REQ-INSTALL-6 traceability Quality audit (advisory) 2026-06-21T07:19:09.8813570Z - Title: Linux elevation install leg: install.sh symlinks the binary into a sudo-reachable path (/usr/local/bin; graceful print-the-one-liner when unelevated) so sudo spt resolves; first sudo spt detects elevation and prompts ONCE for the default user account — thereafter any elevated daemon launch runs daemon + state under that account, never root (KH 5.7 interplay verified) (M8 decision 8) traceability Quality audit (advisory) 2026-06-21T07:19:09.8813679Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8813713Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8813804Z ### REQ-INSTALL-7 traceability Quality audit (advisory) 2026-06-21T07:19:09.8814880Z - Title: Windows inbound reachability: the elevated install leg registers the inbound-UDP firewall rule (New-NetFirewallRule); the daemon self-detects blocked inbound and renders it as the no-connection state in subnet status + the coming-online banner (covers user-scope installs that skip the elevated leg — never a silent NO_SEED_HOLDER dead-end) (M8 root cause 3) traceability Quality audit (advisory) 2026-06-21T07:19:09.8814984Z - Required stages: impl traceability Quality audit (advisory) 2026-06-21T07:19:09.8815023Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8815104Z ### REQ-INSTALL-8 traceability Quality audit (advisory) 2026-06-21T07:19:09.8816118Z - Title: OS-service registration (REQ-INSTALL-1's deferred third leg): Linux systemd USER service + loginctl enable-linger (linger rides the elevated install leg; daemon starts at boot pre-login, user universe per KH 5.7, systemctl --user managed); Windows scheduled task at-logon (interactive session, no stored credentials); a node is reachable after reboot without any manual spt invocation (M8 decision 17) traceability Quality audit (advisory) 2026-06-21T07:19:09.8816236Z - Required stages: impl traceability Quality audit (advisory) 2026-06-21T07:19:09.8816274Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8816352Z ### REQ-CONV-1 traceability Quality audit (advisory) 2026-06-21T07:19:09.8817715Z - Title: Peer address seeding, both cold starts: durable peer-addrs.json (identity dir) maps peer pubkey → last-known dialable address; the pump's resolver consults it FIRST with id-only discovery fallback on miss or dial failure (a stale addr never strands a peer); written by the pairing ceremony (both sides, from the live connection) and by the pump on successful connect; post-join first sync and post-restart resync converge in seconds, not ~1 min (M8 decisions 14, 20) traceability Quality audit (advisory) 2026-06-21T07:19:09.8817819Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8817861Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8817947Z ### REQ-CONV-2 traceability Quality audit (advisory) 2026-06-21T07:19:09.8819099Z - Title: Event-driven advertisement: endpoint online/offline transitions (ready-listener start/stop, rest-state transition, perch death) trigger an immediate advertise_local + peer push as a WAKE of the existing pump loop (no second advertisement path — epoch lease + visibility gates ride unchanged); the cadence stays the steady-state floor (M8 decision 15) traceability Quality audit (advisory) 2026-06-21T07:19:09.8819204Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8819238Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8819318Z ### REQ-PAIR-8 traceability Quality audit (advisory) 2026-06-21T07:19:09.8820547Z - Title: NTP TOTP offset: the pairing ceremony queries NTP at ceremony time (both sides) and applies the derived offset to the TOTP calculation in-process only; system-clock fallback when NTP is unreachable (offline LAN pairing unaffected — NTP failure never blocks a pairing that succeeds today); never sets the OS clock; no background sync loop (M8 decision 18; field trigger: enlyzeam clock >1 min off exceeds the ±1 window) traceability Quality audit (advisory) 2026-06-21T07:19:09.8820764Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8820903Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8820998Z ### REQ-DAEMON-5 traceability Quality audit (advisory) 2026-06-21T07:19:09.8822248Z - Title: Pump liveness: the peer pump writes a last-tick heartbeat consumed by daemon status / subnet status (decision 23 render legs in REQ-CLI-2/REQ-SUBNET-8); the daemon supervises the pump task — a panic is caught, logged loudly, and the pump restarts with capped backoff (≤5 min), so a 5.9-class death self-heals visibly instead of silently halving the daemon (M8 decision 23; field motivation: hfenduleam 2026-06-07 half-death) traceability Quality audit (advisory) 2026-06-21T07:19:09.8822367Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8822396Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8822482Z ### REQ-DAEMON-6 traceability Quality audit (advisory) 2026-06-21T07:19:09.8824449Z - Title: Service-aware `daemon start`/`stop`: when an OS service manager has a registered spt-daemon for this user, `spt daemon start` and `spt daemon stop` drive THAT service (so stop doesn't IPC-kill a unit that auto-restart-fights for the broker socket — the kitsubito 2026-06-08 loop). `start` graduates from a `run` alias to a first-class background verb (ensure-up, idempotent, non-blocking); stop routes managed→manager, manual→IPC. Linux=systemd user unit (`systemctl --user start|stop|is-active spt-daemon`, detected by unit-file presence); Windows=no controllable manager (the logon task is boot-only), so start=detached spawn / stop=IPC. traceability Quality audit (advisory) 2026-06-21T07:19:09.8829268Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8829315Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8829431Z ### REQ-DAEMON-7 traceability Quality audit (advisory) 2026-06-21T07:19:09.8830851Z - Title: `daemon run` is foreground-consistent on every platform: the invoking process IS the daemon, blocks until signalled, never auto-detaches or respawns into an invisible background task. The detached/de-elevated background behavior lives ONLY in `start`. Windows: an ELEVATED `daemon run` refuses with guidance (use `start`, or an unelevated shell) instead of respawning detached/de-elevated and vanishing (KH 5.7 preserved — it still never serves elevated). traceability Quality audit (advisory) 2026-06-21T07:19:09.8830978Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8831022Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8831112Z ### REQ-DAEMON-8 traceability Quality audit (advisory) 2026-06-21T07:19:09.8832050Z - Title: Internal auto-start prefers the service: `ensure_running` (any spt command's implicit daemon start, REQ-DAEMON-3) routes through the service-aware start path — when a manager has a registered service it starts THAT, never a competing manual `spawn_detached` daemon that would fight the service for the socket. traceability Quality audit (advisory) 2026-06-21T07:19:09.8832164Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8832197Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8832298Z ### REQ-DAEMON-9 traceability Quality audit (advisory) 2026-06-21T07:19:09.8834572Z - Title: Net-bind boot-race resilience: a daemon that comes up net-less (NetHost::start failed — e.g. the systemd unit autostarted before the network/DNS stack was ready, `Failed to create an address lookup service`) must SELF-HEAL — retry the net bring-up in the background with capped backoff and, on success, attach net to the broker + spawn the dispatcher/peer-pump (which today are gated on `net_up` at boot and so never start, leaving the node silently unreachable until a manual restart — kitsubito 2026-06-08). Status surfaces the net-less state honestly (a net-less broker renders as 'no connection', not only a pump-STALLED line with a bogus pre-boot heartbeat age). The installer's autostart unit waits for the network (`Wants=/After=network-online.target`) as belt-and-suspenders. traceability Quality audit (advisory) 2026-06-21T07:19:09.8834685Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8834719Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8834823Z ### REQ-HAZARD-LIVEHOST-BOOT-RACE traceability Quality audit (advisory) 2026-06-21T07:19:09.8838368Z - Title: The brain's daemon-hosted Psyche lifecycle surfaces a host-FAILURE on the live perch (harness-diagnosable) and runs net-INDEPENDENTLY. When reconcile_once→host_one→spawn_psyche fails for a state=live_agent+status=online endpoint (e.g. the adapter's psyche binary absent from its install dir, REQ-INSTALL-11), the failure MUST be written to the perch info.json as a CURRENT-STATE field (reason + ts + attempt count; overwritten each 5s retry, CLEARED on successful host) and surfaced by `spt endpoint list`/status — never left as an eprintln on the brain's invisible stderr where a harness reading only perch state is blind. status=online stays authoritative (agent reachable; only the Psyche is missing — brain-restart rehydrate legitimately has online-without-Psyche windows), so this is a SEPARATE psyche-host-health field, never a status de-stamp. Net-independence is a locked-in invariant: spawn_live_host (brainproc.rs:230) reaches the reconcile and hosts the Psyche on a net-less/unpaired/peer-pump-STALLED node, proven by a REAL detached-daemon E2E (real broker→brain-child, real api seed+listen, real install-dir psyche binary). spt-core SURFACES the failure; the adapter owns fixing its packaging. traceability Quality audit (advisory) 2026-06-21T07:19:09.8838736Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8838770Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8838872Z ### REQ-HAZARD-TEMPLATE-ARGV-FILL traceability Quality audit (advisory) 2026-06-21T07:19:09.8842710Z - Title: Command-template substitution fills argv ELEMENTS, not a re-tokenized string: spt-core currently `fill_template`s {key} values INTO the command STRING and THEN `tokenize`s the filled string (runtime.rs:94/122), so a multi-word {key} value whitespace-SPLITS into multiple argv tokens unless the adapter hand-quotes the placeholder, and a value containing a `"` (or `;`) injects/breaks tokenization (shell-injection-adjacent). A filled value MUST become exactly ONE argv element regardless of spaces/quotes in the value. Fix: tokenize the TEMPLATE into argv FIRST, then `fill_template` EACH token, so a `{key}` slot resolves to a single element and the value never participates in tokenization (no whitespace-split, no quote/semicolon injection); preserve the missing-key / empty-command errors and `{{`/`}}` non-interpretation. perri's F-009 (v0.8.1 dogfood, argv-capture-confirmed): a multi-word `{psyche_prompt}` = "PSYCHE REVIVAL time: epoch-ms:… incoming event: (none)" arrived as argv[6..12] (7 stray tokens), the harness runner strict-parsed `--prompt` against the 2nd word, exited 2 within ~1s → phantom hosted perch. Applies to EVERY [session.] template (psyche_init, extractor, notif, …); digest survives today only because its fills ({session_id}/{source}) are single-token. traceability Quality audit (advisory) 2026-06-21T07:19:09.8842858Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8842882Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8842991Z ### REQ-HAZARD-LIVEHOST-NONRESIDENT traceability Quality audit (advisory) 2026-06-21T07:19:09.8846242Z - Title: A daemon-hosted Psyche that spawns then EXITS IMMEDIATELY is a host failure, surfaced like a spawn failure (closes the v0.8.1 residual masking): the REQ-HAZARD-LIVEHOST-BOOT-RACE signal stamps `psyche_host_error` only when `spawn_psyche` returns Err, NOT when the detached spawn() returns Ok but the child dies within moments (e.g. a bad-argv child exiting 2 — the F-009 case). That leaves the residual 'online + no Psyche + no cause' gap: the nested `{id}-psyche` info.json is written status=online with a real-but-DEAD pid and the PARENT perch carries NO psyche_host_error (perri's F-010: tasklist showed 0 host procs across the window while info.json read online). The host MUST confirm RESIDENCY — a hosted child not alive (or whose `{id}-psyche` perch never re-registers / has a dead pid) within N seconds of spawn is treated as a host failure: stamp the parent perch `psyche_host_error{reason:"host not resident within s (psyche perch missing/dead pid)"}` (and do not leave a phantom online nested perch). Closes the last masking gap the v0.8.1 fix left open. perri's F-010 (v0.8.1 dogfood). Sibling of REQ-HAZARD-LIVEHOST-BOOT-RACE. traceability Quality audit (advisory) 2026-06-21T07:19:09.8846381Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8846415Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8846514Z ### REQ-HAZARD-EPOCH-RESET traceability Quality audit (advisory) 2026-06-21T07:19:09.8847802Z - Title: Advertisement-epoch reset strands a node: peers' higher last-seen epoch drops the reset node's fresh advertisements as Stale until the counter outruns history. Common case (full reinstall/re-pair) is mitigated by REQ-SUBNET-7's ceremony eviction (peer-side epoch memory dies with the deleted row — acceptance-verified); the residual narrow slice (epoch file lost, identity kept) is documented, guard deferred to a field hit (4.11) traceability Quality audit (advisory) 2026-06-21T07:19:09.8848108Z - Required stages: traceability Quality audit (advisory) 2026-06-21T07:19:09.8848141Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8848240Z ### REQ-MESH-1 traceability Quality audit (advisory) 2026-06-21T07:19:09.8850360Z - Title: Membership proof (seed-proof): symmetric current-epoch seed-knowledge replaces is_trusted at EVERY inbound gate (registry apply, WAN receive, sync, notif, connection accept). MK = HKDF(seed, domain ‖ subnet_id ‖ seed_epoch); mutual channel-bound challenge-response at connect (transcript binds both handshake-proven node pubkeys, both nonces, subnet_id, seed_epoch, role); verified once per connection, cached on the broker ConnEntry, kept warm via QUIC keep-alive so re-proof is restart/partition/rotation-only. Exact-epoch match (re-seed is the sole N-1 exception). SECURITY INVARIANTS: channel-bound (no cross-connection replay), mutual, accepts a member it never paired (the mesh property). traceability Quality audit (advisory) 2026-06-21T07:19:09.8850478Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8850502Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8850594Z ### REQ-MESH-2 traceability Quality audit (advisory) 2026-06-21T07:19:09.8853108Z - Title: Member roster: node-level union-merge grow-set (per member: pubkey, label, machine_id, last-known address, last-seen — NOT the seed), the discovery directory the mesh dials by. Seeded IN FULL at pairing (seed-holder hands joiner the whole current roster, incl. offline members — folds in deferred pairing-time hostname capture + post-join address seeding); each node authors its own entry stamped with its lease_epoch, merged strictly-greater-wins (the node_label lease); exchanged only over seed-proof'd member connections; forgery-inert (a fake entry names a pubkey that still can't seed-proof). Removal needs a TOMBSTONE — a per-pubkey revoked marker that propagates, dominates the entry, gates admission (seed-proof ∧ ¬tombstoned), and prevents reinsert; cleared by a completed re-pair of that pubkey. Persists through silence (offline member keeps its entry). traceability Quality audit (advisory) 2026-06-21T07:19:09.8853208Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8853251Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8853331Z ### REQ-MESH-3 traceability Quality audit (advisory) 2026-06-21T07:19:09.8854933Z - Title: Mesh row fan-out: registry rows stay OWN-AUTHORED; the only change is the push target widens from directly-paired peers to ALL roster members (a wider DIRECT fan-out, never a third-party relay). Every row/message still arrives from its author over a handshake → KNOWN-HAZARDS 7.5 (origin = handshake node) and 4.10 (eviction lease: any future update comes from that node itself, alive) PRESERVED VERBATIM. Closes the staggered A→B→C repro: C (roster-seeded with A at pairing) initiates to A, seed-proof admits C unpaired, A learns C, both push directly. traceability Quality audit (advisory) 2026-06-21T07:19:09.8855042Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8855076Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8855163Z ### REQ-MESH-4 traceability Quality audit (advisory) 2026-06-21T07:19:09.8857312Z - Title: Revoke + timeboxed seed rotation + re-seed grace: `spt subnet revoke ...` (list, elevation-gated, revoke-only) writes roster tombstones immediately, then schedules ONE seed rotation (re-mint seed, bump seed_epoch, push new seed CONFIDENTIALLY over member-auth'd TLS connections — never in roster/registry gossip — force-drop revokees) at the close of a coalescing window (default 1h); further revokes in the window join the same rotation (one epoch bump). `--force-rotate-seed` rotates immediately (compromised-node path). RE-SEED GRACE: a node proving the immediately-prior epoch (N-1) AND still on the roster gets a re-seed-only restricted connection (auto-heals a benign offliner); revoked/off-roster denied; ≥2 stale → re-pair. traceability Quality audit (advisory) 2026-06-21T07:19:09.8857429Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8857467Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8857552Z ### REQ-MESH-5 traceability Quality audit (advisory) 2026-06-21T07:19:09.8858916Z - Title: Hard cutover from pairwise trust: delete peers.json + the is_trusted authorization path (no migration — expendable test fleet, re-pairs fresh under the new model, user decision 2026-06-08). Warn-on-change DEMOTED from a gate to an awareness notice anchored on machine_id (not label): 'machine M, last seen as K1, now presents K2' — fires the same event as the REQ-SUBNET-7 re-pair overwrite. The TrustStore/peers.json code and its call sites are removed, not left dead. traceability Quality audit (advisory) 2026-06-21T07:19:09.8859288Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8859312Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8859398Z ### REQ-MESH-6 traceability Quality audit (advisory) 2026-06-21T07:19:09.8860596Z - Title: Concurrent liveness probes: `spt subnet status --nodes` fans out its offline/serve-probes (REQ-SUBNET-5) CONCURRENTLY — total wall-time bounded by the single-probe ceiling (~3s), never k×ceiling. The mesh makes a node see ALL members (many possibly offline), so a serial probe loop would be offline_count×3s. (Planning verifies the current REQ-SUBNET-5 probe loop's behavior and fixes it if serial.) traceability Quality audit (advisory) 2026-06-21T07:19:09.8860700Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8860733Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8860820Z ### REQ-SHELL-3 traceability Quality audit (advisory) 2026-06-21T07:19:09.8862592Z - Title: Drive channel (owner->shell, REST-only, never-spooled, latest-wins): the owner->shell mirror of sensory for continuous real-time control (scroll/crank/stick/avatar) — a [shell.drive] manifest vocab + EVENT_TYPE_DRIVE frame, delivered to the ONLINE binary only via a single live slot (a new frame supersedes an undelivered one — no spool, no queue, no replay on relink), dropped-with-diagnostic if the shell is offline; cross-node rides the ephemeral link (REST class), never the durable shell spool. Commands = discrete+durable; drive = continuous+ephemeral (CONTEXT:260, minted 2026-06-11 Gateway grill). traceability Quality audit (advisory) 2026-06-21T07:19:09.8862712Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8862745Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8862826Z ### REQ-SHELL-4 traceability Quality audit (advisory) 2026-06-21T07:19:09.8864569Z - Title: Shell tunnel (reliable-ordered opaque byte stream): an owner<->shell link may hold a long-lived, reliable-ordered, link-bound QUIC stream pair carrying opaque wire protocol traffic the channel taxonomy must NOT reinterpret (first consumer usbip URB) — manifest opt-in, not enveloped, not MAC-framed, not spooled; the link lifecycle governs it (a link-break closes the tunnel). Reliable-ordered ⇒ congestion surfaces as lag never loss ⇒ acceptable only on-LAN: the on-LAN posture is documented and the tunnel is NOT proven cross-WAN (CONTEXT:262, minted 2026-06-11 Gateway grill; doyle gate C2). traceability Quality audit (advisory) 2026-06-21T07:19:09.8864680Z - Required stages: doc, impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8864718Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8864812Z ### REQ-CONSENT-3 traceability Quality audit (advisory) 2026-06-21T07:19:09.8866619Z - Title: Per-capability approval gates (class-keyed): the require_approval enum may ride INDIVIDUAL [shell.capabilities] entries — gating the dangerous ACT, not just the spawn — with an optional class_key scoping the grant qualifier finer than the capability id ((owner endpoint x device class x node); a remembered HID-class attach grant never authorizes a storage-class attach). Reuses the grant store + interactive escalation + tighten-only floor (REQ-CONSENT-1/2 plumbing). Spawn gates govern EXISTENCE; capability gates govern ACTS — an explicitly distinct invariant (CONTEXT:283, ratified 2026-06-11 Gateway grill). traceability Quality audit (advisory) 2026-06-21T07:19:09.8866742Z - Required stages: doc, impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8866766Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8866852Z ### REQ-SHELL-5 traceability Quality audit (advisory) 2026-06-21T07:19:09.8868012Z - Title: Shell ownership is owner-type-agnostic: any non-Shell endpoint type may own/spawn/drive/command/link a shell (Gateway the named first) — control-exclusivity keys on the owner endpoint_id, NEVER on the owner's endpoint type. No ownership path (mint, launch, owner-from-link, cmd, drive, tunnel, sleep/wake, owner-shutdown) inspects the owner's type (CONTEXT:264, ratified 2026-06-11 Gateway grill). traceability Quality audit (advisory) 2026-06-21T07:19:09.8868116Z - Required stages: doc, impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8868150Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8868261Z ### REQ-HAZARD-VIEWER-CLOSE-DETACH traceability Quality audit (advisory) 2026-06-21T07:19:09.8877955Z - Title: A VIEW is independent from the endpoint: closing the tab/window where `spt endpoint run` was invoked must detach ONLY the `spt rc` attach pump — the daemon-hosted harness keeps running and stays re-attachable via `spt rc `. ROOT (Windows, v0.12.0 real-harness defect): the daemon never breaks away from the launching terminal's Job Object. Windows Terminal / VS Code place the launched shell AND every descendant into a Job Object with JOB_OBJECT_LIMIT_KILL_ON_JOB_CLOSE; closing the tab drops the terminal's last job handle → the OS terminates every process still in that job. A child escapes only with CREATE_BREAKAWAY_FROM_JOB — used NOWHERE in the tree. Both daemon spawn paths (daemon.rs:707 detached_no_inherit = DETACHED_PROCESS|CREATE_NEW_PROCESS_GROUP|CREATE_NO_WINDOW; deelevate.rs:519 elevated = CREATE_NEW_CONSOLE|...) drop the CONSOLE but NOT job membership, so the daemon's freshly broker-spawned ConPTY harness subtree is reaped on tab-close. The ConPTY/pseudoconsole isolation itself is CORRECT (portable-pty builds the pseudoconsole in the daemon; no console signal / handle leak) — the leaking lifetime binding is the Job Object, not the console. FIX: add CREATE_BREAKAWAY_FROM_JOB to both daemon spawn paths AND pin each broker-spawned harness into a DAEMON-OWNED Job Object (mirror reap.rs/Breap) as backstop (survives even where a terminal sets SILENT_BREAKAWAY_OK=false). Unix: the daemon's own session detachment (new session, no controlling terminal) already keeps a closing terminal's SIGHUP off its children — verify, add a guard test, no code expected. FIX UPDATE (v0.12.1 L1.5, doyle re-scope operator-approved 2026-06-18): job-neutral daemon launch is now PRIMARY, breakaway DEMOTED to a fallback rung. ROOT reframed — the daemon INHERITS the terminal's Job because spawn_detached runs FROM the terminal-child CLI (DETACHED_PROCESS detaches the console, not the job); breakaway tried to claw back out but a job CAN deny it (the L1 finding). FIX: launch the cold-started daemon via a job-NEUTRAL creator so it is WmiPrvSE/Task-Scheduler-owned, OUTSIDE any terminal job from birth (why Task-Scheduler-autostarted daemons never had this bug). Launcher ladder (first-success-wins, daemon.rs spawn_detached → BOTH cold-start AND `spt daemon start`): (1) WMI Win32_Process.Create via ABSOLUTE powershell -EncodedCommand (KH 5.12 abs path; base64-UTF16LE dodges all quoting; success requires BOTH ReturnValue==0 AND a parsed ProcessId, else fall-through — never a silent launched), forwarding SPT_* env via a `cmd /c set … & start /b` wrapper because a WMI/scheduler child does NOT inherit transient shell env (verified — SPT_HOME would be lost, wrong universe); (2) schtasks one-shot (same env wrapper; best-effort fallback); (3) CREATE_BREAKAWAY_FROM_JOB (the L1 code, reordered below); (4) in-job last resort (logs DETACH_IN_JOB + tab-close caveat). detached_no_inherit (breakaway-then-in-job) is UNCHANGED for its other caller shellhost::launch_shell (a daemon-spawned shell is already job-neutral once the daemon is). The elevated deelevate path keeps its L1 breakaway for now (elevated-case WMI-reparent = FOLLOW-UP). (v0.12.1) traceability Quality audit (advisory) 2026-06-21T07:19:09.8878331Z - Required stages: doc, impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8878369Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8878469Z ### REQ-HAZARD-ATTACH-WEDGE traceability Quality audit (advisory) 2026-06-21T07:19:09.8883808Z - Title: A legitimately dead PTY child (real crash/kill) + an undrained operator pump must NOT wedge the broker for all other clients. ROOT (v0.12.0 real-harness defect): loopback attach output is a blocking write_all into a bounded 64KB tokio duplex (nethost.rs:1040,1090); when the operator's rc pump stops draining (tab closed) the buffer fills and write_all blocks forever (the 'loopback never hangs' assumption at nethost.rs:1103 is false), parking a worker in the 2-worker net runtime (nethost.rs:640); a couple of these saturate BOTH workers → every new attach / `endpoint run` stalls right after 'PUMP_IPC_READER: spawned' → 30s FIRST_EVENT_GRACE → 'no output / dead or wedged'; `daemon stop` cannot join the stuck workers. DISTINCT from the removed B1 path-(c) mutex deadlock. DISPOSITION = PROVE-DON'T-CHANGE (doyle GATE-PASS @e883f45, 2026-06-18): this ROOT is the SUPERSEDED v0.12.0 hypothesis — the post-L0 code ALREADY prevents the wedge, so NO fail-fast / worker-count code was added. serve_attach forwards fire-and-forget (net_stream_send op_id=None) and the broker-side send_stream is already BROKER-QUIC-DEADLINE-bounded (bounded_block_on, 10s); the loopback duplex is drained broker-INTERNALLY by the operator row's own read pump (RecvHalf::Loopback, retentive_cap==0 → evict-not-park) so a dead rc (a dropped IPC subscriber) never backs peer_w up; bounded_block_on parks the BROKER DISPATCH thread, not a net worker → no worker-pool exhaustion (full mechanism in the required_stages comment). Folds the status=online sub-check: a dead spt-hosted endpoint is marked OFFLINE within one reconcile tick on abrupt child death (broker exit-waiter reaps the session → B2 sees it absent) — PROVEN, no change. (v0.12.1) traceability Quality audit (advisory) 2026-06-21T07:19:09.8884115Z - Required stages: int traceability Quality audit (advisory) 2026-06-21T07:19:09.8884149Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8884250Z ### REQ-PICKER-HISTORY-FRESH traceability Quality audit (advisory) 2026-06-21T07:19:09.8885341Z - Title: The `spt endpoint run` picker shows project history for FRESH endpoints (operator-raised v0.12.0 real-harness finding). Symptom: a fresh endpoint shows no project history in the picker. ROOT TBD — investigate the project-history loader (v0.10.0 PICKER-2, picker/data.rs) before fixing: distinguish a real loader bug from 'fresh = no history yet' semantics. (v0.12.1) traceability Quality audit (advisory) 2026-06-21T07:19:09.8885457Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8885490Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8885589Z ### REQ-PICKER-ONLINE-ACTION traceability Quality audit (advisory) 2026-06-21T07:19:09.8887133Z - Title: The `spt endpoint run` picker shows the correct action for an ALREADY-ONLINE endpoint — Attach, NOT 'Start now' (operator-raised v0.12.0 real-harness finding). Symptom: the picker offers 'Start now' for endpoints that are already online. ROOT TBD — investigate the status→action mapping (v0.10.0 PICKER-1 four-state status, picker/model.rs): is it reading live/online state correctly, or rendering stale/wedged broker state (i.e. partly a symptom of the broker wedge / status=online latch)? Fix so online → Attach. (v0.12.1) traceability Quality audit (advisory) 2026-06-21T07:19:09.8887247Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8887285Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8887377Z ### REQ-ENDPOINT-LIST-MERGE-LOCAL traceability Quality audit (advisory) 2026-06-21T07:19:09.8889199Z - Title: `spt endpoint list` always merges this node's LOCAL (unadvertised) perches into the view; the `--local` flag is REMOVED (operator decision 2026-06-17). Rationale: `spt whoami` is a thin alias of `endpoint list` — a just-online agent running `whoami` must see its OWN perch, or it gets an omitted-self view ('chaos'). FIX: drop the `--local` flag + its `--detail` conflict test + the v0.10.0 REQ-PICKER-5 hint line (cli.rs:1678) + cmd_list_local; the bare list merges local perches into the subnet view; fix the whoami alias path accordingly. Run `cargo run -p xtask -- gen` (docs-drift, DEFAULT target). (v0.12.1) traceability Quality audit (advisory) 2026-06-21T07:19:09.8889309Z - Required stages: doc, impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8889343Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8889452Z ### REQ-HAZARD-ENDPOINT-RUN-ATTACH-OUTPUT traceability Quality audit (advisory) 2026-06-21T07:19:09.8894373Z - Title: A clean `spt rc` attach to a LIVE spt-hosted (`endpoint run`) harness must DELIVER the harness's PTY output. KEYSTONE — the operator's central 'attach shows no output' symptom, reproduced on the real dummy-harness fixture (v0.12.1 Wave 1) with NO death and NO wedge: bringup succeeds (online, harness pid alive + heartbeating, psyche hosted), the attach CONNECTS (PUMP_IPC_READER spawned, no RC_FAIL, holds the full window) — but receives EXACTLY 0 bytes over 10s of the harness's flushed [session.self] stdout. DISTINCT from REQ-HAZARD-VIEWER-CLOSE-DETACH (death) and REQ-HAZARD-ATTACH-WEDGE (dead-child backpressure): here the harness is ALIVE and the attach is a clean first subscribe. This BLOCKS the 'view is independent' invariant — re-attach is meaningless if a live endpoint-run harness shows nothing. KNOWN-GOOD (rules out 'no drain'): attach.rs `local_attach_via_loopback_conn_rides_the_same_pump` + `broker_spawns_the_pty_child_in_the_requested_cwd` prove the broker DOES drain+fan a `spawn_session` PTY child to a loopback attach over the SAME transport rc uses. Both spawn_session and endpoint-run's spawn_session_pid send KIND_SPAWN → the same dispatch_spawn (broker.rs:706/835) which starts the per-session drain+OutputLog — so the gap is NARROWER than 'no drain', endpoint-run-specific. Root candidates: (a) spawn_session_pid's SpawnReq stdio/env/cwd differs so the dummy's stdout isn't the captured ConPTY; (b) the harness stdout WRITE BLOCKS because the ConPTY buffer fills (drain not reading THIS pty) — explains alive-but-0-bytes; (c) ConPTY reader-park (KH 7.6) on this path; (d) `spt rc` resolve_session/subscribe for an endpoint-run session subscribes to the wrong/empty log. (v0.12.1) traceability Quality audit (advisory) 2026-06-21T07:19:09.8894685Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8894719Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8894824Z ### REQ-CLI-HELP-MARKDOWN traceability Quality audit (advisory) 2026-06-21T07:19:09.8897770Z - Title: `spt --help` (and every subcommand --help) renders the inline Markdown authored in the clap doc-comments as terminal styling, never as literal markers: `**bold**` → ANSI bold, `` `code` `` → ANSI cyan, `[text](url)` → `text`. The markers are STRIPPED either way — a raw `**` or backtick must NEVER reach the user (the operator-reported v0.12.0 defect: help text reads `**ctrl-b**` and stray backticks verbatim). Color/bold escapes are emitted ONLY when the help is going to a real terminal AND color is not suppressed (NO_COLOR unset · CLICOLOR != 0 · CLICOLOR_FORCE forces on); a pipe / redirect / CI / NO_COLOR falls back to strip-only (clean plaintext, zero escapes) so machine-readable help is byte-identical regardless of marker syntax. Pure transform over the clap-rendered help string at the single run()/bare_invocation chokepoint; preserves pre-existing ANSI (CSI sequences passed through untouched), never spans markers across a newline, leaves unmatched/empty markers literal, and does not alter the help layout. (v0.12.1) traceability Quality audit (advisory) 2026-06-21T07:19:09.8897898Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8897937Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8898046Z ### REQ-HAZARD-WMI-DAEMON-WINDOW traceability Quality audit (advisory) 2026-06-21T07:19:09.8900542Z - Title: `spt daemon start` launches the daemon with NO visible console window. REGRESSION (v0.12.1 L1.5): the WMI job-neutral launch (spawn_daemon_via_wmi) set CREATE_NO_WINDOW on the launching powershell but NOT on the Win32_Process.Create call — Win32_Process.Create does not inherit it, so the spawned cmd.exe env-forwarding wrapper popped a console window on every cold-start (violating REQ-INSTALL-10's v0.7.4 no-persistent-window invariant; the old detached_no_inherit path set DETACHED_PROCESS|CREATE_NO_WINDOW). FIX: pass a Win32_ProcessStartup with CreateFlags=DETACHED_PROCESS (0x8 — no console so no window; CREATE_NO_WINDOW 0x08000000 is NOT a valid Win32_ProcessStartup flag → ReturnValue 21 invalid-param, which is why the naive port fails) + ShowWindow=SW_HIDE(0) belt, via the ProcessStartupInformation argument. (v0.12.2) traceability Quality audit (advisory) 2026-06-21T07:19:09.8900665Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8900698Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8900809Z ### REQ-CLI-OUTPUT-MARKDOWN traceability Quality audit (advisory) 2026-06-21T07:19:09.8905193Z - Title: Human-prose COMMAND OUTPUT (not just `--help`) renders the inline Markdown authored in its source strings as terminal styling, never literal markers: `` `code` `` → ANSI cyan, `**bold**` → ANSI bold, `[text](url)` → `text`, markers STRIPPED either way. REQ-CLI-HELP-MARKDOWN only hooked the clap `--help` chokepoint, so command output still printed raw Markdown (audit: `spt how-to` topic text showed `# headers`/backticks, `spt subnet`/`subnet status` hint footers showed stray backticks, the daemon-status `not running` line, the `ENDPOINT_RUN_STARTED` attach hint, and the daemon's `SUBNET_DETACHED` startup line — 13 prose surfaces). The same line-bounded pure `helpfmt::render` is applied at each emit site, color-gated by the OUTPUT STREAM's own tty (`stdout_color` for print/println, the new `stderr_color` for eprintln). HARNESS-SAFETY (binding): color is tty-gated, so an adapter (piped / non-tty / NO_COLOR) gets STRIP mode = zero ANSI + markers removed; every dual-contract MACHINE token on a rendered line (`ENDPOINT_RUN_STARTED:`, `NO_SUCH_TOPIC:`, `SUBNET_DETACHED:`) carries NO Markdown markers, so it survives strip byte-intact — the adapter parse is never perturbed. Pure-machine output (the `` envelope, bringup parse-tokens SEEDED/BOUND/READY/NO_SEED, `--json`, QR) is NEVER routed through the renderer. The one spt-daemon source string (`SUBNET_DETACHED`, the bin-local renderer is unreachable from the daemon crate) is authored marker-free instead. (v0.12.2) traceability Quality audit (advisory) 2026-06-21T07:19:09.8905512Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8905550Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8905656Z ### REQ-HAZARD-INJECT-CONTROL-COEXIST traceability Quality audit (advisory) 2026-06-21T07:19:09.8913115Z - Title: SPINE INVARIANT (v0.13.0 keystone): the broker must accept INJECTED keystrokes into an spt-hosted PTY (the v0.11.0 raw direct-inject today; the ADR-0022 translation-binary choreography tomorrow) WHILE a live `spt rc` controller is attached to the SAME PTY, without (a) the operator losing control, (b) the endpoint latching ONLINE+CONTROLLED, or (c) the broker wedging. The injection inlet is PERMANENT — spt-claude-code requires keystroke injection — so this is root-caused + fixed at the PTY-injection layer, IN STEP with the ADR-0022 delivery redesign that formalizes the inlet. REOPENS the wedge facet of REQ-HAZARD-ATTACH-WEDGE: the v0.12.1 prove-don't-change covered only DEAD-CHILD backpressure, NOT the injection trigger (operator's signal — one injected keystroke succeeds, the next wedges → the single-threaded broker parks on a blocking PTY/loopback write after injection-induced harness output). REPRO-FIRST on the real dummy-harness fixture (NO theory): instrument to nail the exact blocking call before any fix. Fix candidates: non-blocking/fail-fast PTY write, split input/output, bounded-evicting. Mechanism shared with W2 — spt-core owns EVERY PTY write and applies an injected sequence ATOMICALLY (controller input buffered during the sequence, flushed after) so a stash/restore can't be clobbered. CONFIRMED ROOT (doyle /diagnose 2026-06-19, code-grounded): Broker::append (broker.rs:205-227) fans each live output chunk to the CONTROLLER on a SYNCHRONOUS BLOCKING write_frame held inline in the session's drain thread (the 'authoritative, advances delivered_through' path, D4-1), while VIEWERS use a dedicated writer thread + bounded evicting sync_channel (add_viewer:273 / viewer_writer) that can never stall the drain. So a slow/backed-up controller socket — or the full 64KB loopback duplex (the ATTACH-WEDGE buffer) — BLOCKS the drain thread → output stalls → keystroke echoes stall (PERCEIVED input lag) → unrecoverable wedge when the consumer never drains. TRIGGERS ON NORMAL INTERACTIVE rc USE under heavy harness output (TUI redraw), NOT only message injection — same root, wider repro. FIX DIRECTION: move controller delivery off the drain thread onto a dedicated writer (the viewer_writer pattern) BUT preserve the authoritative cursor — block the WRITER thread (not the drain), bound the wedge (deadline → detach/mark-gone, never park forever), never silently evict the operator's authoritative view. (v0.13.0) traceability Quality audit (advisory) 2026-06-21T07:19:09.8913268Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8913301Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8913416Z ### REQ-MSG-IDLE-TRANSLATION-BINARY traceability Quality audit (advisory) 2026-06-21T07:19:09.8918246Z - Title: spt-hosted idle message delivery via an adapter TRANSLATION BINARY (ADR-0022). New opt-in manifest section `[message-idle-translation-binary]` = a TABLE carrying a `path` scalar (doyle OPT-B ruling: modeled as a table, not a bare top-level scalar, so a preceding section cannot silently absorb it + N+1 extensible; spt-core does NOT deny_unknown_fields, so a future key degrades gracefully); spt-core LIFECYCLE-manages it (spawn when the endpoint comes up, terminate when it goes down). The binary is a PURE stdin→stdout filter; spt-core owns EVERY PTY write. stdin (JSON-lines): `{type:"init",endpoint_id,node}` first · `{type:"event",envelope:""}` per inbound message (ADR-0020 envelope) · `{type:"input"}` content-free ping on each operator keystroke (binary tracks user-idle for its own idle-gated buffering; PTY input content NOT duplicated). stdout (JSON-lines): keystroke-commands `{key:…}`/`{delay_ms:…}`/`{text:…}` (extensible). spt-core applies the emitted sequence to the broker PTY ATOMICALLY (the W1 coordination — REQ-HAZARD-INJECT-CONTROL-COEXIST). The daemon poll feed is the ONE idle substrate for both topologies (Q1=A): harness-hosted consumer = the Monitor child, spt-hosted consumer = this binary; spt-core PREFERS a perch's poll listener if one exists (so spt-hosted can run a listener AND keep `spt rc`). Idle-only; busy/mid-turn = adapter hook-injection. Closes the current grounding gap: `api bind` registers no listener port → a listener-less spt-hosted perch SPOOLS inbound (only spooling+adapter-poll works today) → this delivers real inbound into the PTY. The v0.11.0 raw inject is the degenerate `{text:payload}{key:enter}` case. (v0.13.0) traceability Quality audit (advisory) 2026-06-21T07:19:09.8918566Z - Required stages: doc, impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8918608Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8918708Z ### REQ-HAZARD-BIND-CWD-UNSET traceability Quality audit (advisory) 2026-06-21T07:19:09.8921313Z - Title: A bound endpoint's `info.cwd` is SET at bind so a freshly-created perch appears under its own project tab. ROOT (found, v0.13.0): `info.cwd` is NEVER set on bind — `cmd_bind` (spt-hosted) and `bind_from_seed` (harness-hosted) never thread cwd into `establish_perch`/`rec.cwd`. FIX: `cmd_bind` reads its own `current_dir` (the broker spawned it in `project_cwd`); `bind_from_seed` passes `seed.cwd` (already captured at seed time, currently DISCARDED). DISTINCT from REQ-PICKER-HISTORY-FRESH (v0.12.1) — that unioned cwd-origin into picker MEMBERSHIP but tested merge_origin_project with a PROVIDED origin; it never asserted `info.cwd` is actually set on bind, so a real `endpoint run` perch still had an empty cwd and the union had nothing to union. This is the v0.12.1 P1 'appears under its own project right away' claim that was REFUTED in the changelog — delivered for real here. (v0.13.0) traceability Quality audit (advisory) 2026-06-21T07:19:09.8921424Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8921457Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8921556Z ### REQ-PICKER-UX-V013 traceability Quality audit (advisory) 2026-06-21T07:19:09.8923145Z - Title: `spt endpoint run` picker UX (v0.13.0 operator dogfooding): (1) SKIP the first screen — open directly on 'Pick existing'; `n` jumps to 'Create new'. (2) AUTO-ATTACH after both Start-new AND Resume-from-history (both currently don't attach and show no stdout); add an `h` shortcut to run headless (no attach). (3) 'controlled by' shows the node NAME (node_label_display), not the raw hex. (4) Clean up Start-new output — drop the Rust `pid=Some(142748)` leak and the 'harness binds its perch on startup' internals; user-friendly, not a process log. (v0.13.0) traceability Quality audit (advisory) 2026-06-21T07:19:09.8923231Z - Required stages: traceability Quality audit (advisory) 2026-06-21T07:19:09.8923265Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8923363Z ### REQ-HAZARD-DRIVEN-BY-SELFHEAL traceability Quality audit (advisory) 2026-06-21T07:19:09.8924868Z - Title: An spt-hosted endpoint's ONLINE+CONTROLLED state (`driven_by`) must CLEAR even when the detach IPC is lost — do NOT rely on the detach signal (same lesson as REQ-HAZARD-HOSTED-LIVENESS-RECONCILE B2): the reconcile loop clears `driven_by` when the endpoint has no live controller/session. Today a wedged or lost pump never delivers the detach, so the endpoint stays latched CONTROLLED forever. Composes with W1 (the wedge no longer blocks the detach) and rides the same pull-primary reconcile substrate as B2. (v0.13.0) traceability Quality audit (advisory) 2026-06-21T07:19:09.8924991Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8925029Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8925140Z ### REQ-HAZARD-DRIVEN-BY-IDLE-REMOTE-EVICT traceability Quality audit (advisory) 2026-06-21T07:19:09.8929898Z - Title: An spt-hosted endpoint driven by a REMOTE controller whose remote is gone but whose broker connection stays OPEN (a wedged/lost pump that never delivers the detach) AND whose session is IDLE (no output) stays latched ONLINE+CONTROLLED forever: the W1 drain-evict only fires on OUTPUT (CONTROLLER_WRITE_DEADLINE on a backed-up write), a clean disconnect self-heals via detach_if→clear_controller, but an idle session with a half-open/wedged controller connection produces neither signal. PROVED repro-first on a real broker (v0.13.0 W5, inject_control_wedge.rs w5_a2): controller_by STAYS Some(origin) and driven_by STAYS Some after the remote is abandoned without a clean EOF on an idle session — so the brain reconcile CANNOT detect it from KIND_SESSIONS controller_by (the broker still reports it controlled). FIX DIRECTION (doyle ruling 2026-06-19, broker-side single-writer — the broker owns driven_by/clear_controller): wire the EXISTING D4c NetPresence connection-disconnect event → clear_controller for any session whose controller identity == the dead origin (become_controller already stores Some(origin); presence events already exist — modest wiring, NOT a new probe). The liveness ORACLE is QUIC's own keepalive/idle-timeout: a presence-disconnect IS a real QUIC conn close, already tolerant of transient blips within the keepalive window, so NO heavy partition ADR is needed UNLESS the QUIC timeout proves too slow for the UX (then mint an ADR for a faster controller-heartbeat + its false-evict bound). Composes with W1 (output path) + W5 Gap B (no-session) — this is the third, idle-remote, leg. (v0.13.0 follow-up) traceability Quality audit (advisory) 2026-06-21T07:19:09.8930213Z - Required stages: traceability Quality audit (advisory) 2026-06-21T07:19:09.8930247Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8930356Z ### REQ-HAZARD-RC-INPUT-KEY-ENCODING traceability Quality audit (advisory) 2026-06-21T07:19:09.8934822Z - Title: An `spt rc` session forwards the Backspace key as the VT DEL byte (0x7f), so the hosted TUI (Claude Code) deletes ONE character — never a whole word. SYMPTOM (operator dogfooding): Backspace in an rc session always behaves like ctrl+Backspace — deletes the entire last word. ROOT (doyle /diagnose, code-grounded, byte PENDING HITL confirm): rc is a RAW VERBATIM byte pump — spawn_stdin_reader (rc.rs:152) reads std::io::stdin() bytes under crossterm raw mode and forwards them unchanged (parse_stdin_chunk only intercepts the ctrl-b detach prefix); there is NO key-event encoding and NO 0x08↔0x7f normalization ANYWHERE in the tree (grep: zero SetConsoleMode / ENABLE_VIRTUAL_TERMINAL_INPUT). On Windows, crossterm enable_raw_mode does NOT set ENABLE_VIRTUAL_TERMINAL_INPUT, so the LEGACY console delivers ^H (0x08, ctrl+h) for Backspace instead of VT DEL (0x7f); Claude Code maps ^H → backward-kill-word → the observed whole-word delete. CONFIRM-FIRST (build the loop): an env-gated hexdump in spawn_stdin_reader (SPT_RC_DEBUG_KEYS) prints the forwarded byte; operator presses Backspace + ctrl+Backspace in a real rc session. FIX CANDIDATES: (a) enable ENABLE_VIRTUAL_TERMINAL_INPUT on the rc stdin console on Windows so the console emits proper VT (Backspace→0x7f, arrows/Home/End as CSI) — cleanest, fixes the whole key map not just Backspace; (b) narrow normalize bare 0x08→0x7f in the rc input path (riskier — a real ctrl+h is also 0x08). Prefer (a) unless it regresses other keys. Add a KNOWN-HAZARDS.md entry on landing. (v0.13.0) traceability Quality audit (advisory) 2026-06-21T07:19:09.8934945Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8934979Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8935085Z ### REQ-HAZARD-EFFECT-JOURNAL-PTY-WEDGE traceability Quality audit (advisory) 2026-06-21T07:19:09.8944098Z - Title: The effect journal serializes EVERY PTY effect under one mutex held ACROSS two fsyncs AND the blocking PTY write — so interactive input stutters and ultimately wedges the daemon hard. ROOT (doyle /diagnose, code-grounded + MEASURED on the operator's real Windows box, 2026-06-19): EffectJournal::apply_once (effect.rs:168-188) takes `inner.lock()` and holds it across `write_line(PENDING)` → `effect()` → `write_line(DONE)`, where write_line (effect.rs:235-239) does flush()+sync_all() (a full FlushFileBuffers) — so each effect pays TWO fsyncs under a GLOBAL lock, and the closure `effect()` (the actual PTY write, broker.rs:1257 EffectKind::PtyWrite via attach.rs:197 send_effect) runs while the lock is held. Two operator-visible facets, ONE root: (A) STUTTER/LAG — every keystroke is a PtyWrite effect = 2× sync_all serialized; measured fsync on %LOCALAPPDATA%\spt-core = median 6.5ms, spikes to 198ms (C: was recently at 100%), so ~13ms+ per keystroke best case, hundreds under contention → 'many but not all keypresses take 100s of ms, choppy, worsens with volume'. (B) HARD PERMANENT WEDGE — when a PtyWrite `effect()` blocks (ConPTY input buffer full / harness not draining stdin), the journal lock is held INDEFINITELY → the single-threaded inbound-stream dispatch (dispatch.rs serve_attach, which both applies input effects AND opens attaches) can never progress → EVERY subsequent attach (`spt rc --view`/`--take`) fails with 'attach request: brain IPC read deadline elapsed' (confirmed: two retries deadline identically; broker control-plane KIND queries still answer — different thread). This REFUTES the W2-deferred ruling that park-(b)/(c) is 'Windows-benign because ConPTY absorbs 4MiB' — on the real box the input path wedges regardless. DISTINCT from W1 (REQ-HAZARD-INJECT-CONTROL-COEXIST = the OUTPUT drain, correctly fixed @8b5583e; output uses broker.rs:1106 append, NOT the fsync journal). This is the INPUT/effect-journal path W1 never touched, and it is THE wedge the operator hits with --take/--view. FIX DIRECTION (candidates, repro-first — extend inject_control_wedge.rs to a REAL backed-up-PTY-consumer + a real rc-client attach assertion, the gap W1's gate missed): (1) do NOT hold the journal lock across effect() — reserve the key + fsync PENDING under lock, RELEASE, run effect(), re-acquire to fsync DONE + mark applied (preserve crash-idempotency via the per-key reservation, not a global hold); (2) bound/fail-fast the PtyWrite itself (the W2-deferred park bound — write_input must never block indefinitely, DSR-answer must not hold the writer mutex across a blocking write); (3) drop per-keystroke fsync on the interactive path — PtyWrite effects are EPHEMERAL (a keystroke lost on a broker crash is retyped; PTY state is not reconstructed from keystroke replay), so in-memory applied-set dedup suffices (the broker survives the brain — that IS the dedup anchor), with async/batched fsync or no-fsync for EffectKind::PtyWrite while durable kinds (NetSend/NetDial/Registry/Spool) keep their fsync. Combine (1)+(3) at minimum. Add a KNOWN-HAZARDS.md entry on landing. (v0.13.0) traceability Quality audit (advisory) 2026-06-21T07:19:09.8944460Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8944493Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8944602Z ### REQ-HAZARD-RC-ATTACH-ONLINE-RACE traceability Quality audit (advisory) 2026-06-21T07:19:09.8948159Z - Title: `spt endpoint run` in an ATTACH/VIEW terminal action attaches BEFORE the freshly-spawned endpoint is online, so the attach races (or outright loses to) the harness bind. ROOT (doyle /diagnose, code-grounded): cmd_endpoint_run (cli.rs) does launch_harness_brokered_in -> (if start: return) -> run_attach with NO await-online between them. launch_harness_brokered_in returns once the harness PROCESS is spawned, but the broker-PTY bind (info status -> STATUS_ONLINE + the live session) lands ASYNC. Both picker attach paths route here with start=false (RunMode::Attach -> cmd_endpoint_run start=false,view=false): Start-now catches the endpoint mid-bringup -> run_attach attempts + loses the handshake race; Resume-from-history catches it still fully OFFLINE -> run_attach's status-gate (REQ-HAZARD-RC-ATTACH-FAILFAST) short-circuits 'offline - nothing to attach' and NEVER attempts. SAME root, two faces (the W4 attach-by-default surfaced both; an online endpoint is unaffected - the picker returns Outcome::Attach, not Run). FIX: in cmd_endpoint_run, when the terminal action is attach/view (NOT start), AWAIT the endpoint online between launch_harness_brokered_in success and run_attach - poll spt_store::info read_info().status to STATUS_ONLINE with a bounded harness-boot deadline (~25s) at a tight interval; on online -> run_attach; on timeout -> ENDPOINT_RUN_ONLINE_TIMEOUT err (do NOT attach a dead bringup). (v0.13.0) traceability Quality audit (advisory) 2026-06-21T07:19:09.8948307Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8948335Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8948425Z ### REQ-RC-KEY-VT-TRANSLATE traceability Quality audit (advisory) 2026-06-21T07:19:09.8954210Z - Title: On Windows, `spt rc` translates CONSOLE KEY EVENTS to standard xterm VT so ALL keys reach the hosted harness — arrows/Home/End/PgUp/PgDn/Insert/Delete/F-keys, every modifier combo, Backspace/Ctrl+Backspace — not just the byte-emitting ones. ROOT (operator HITL, doyle /diagnose): `spt rc` reads raw STDIN BYTES (spawn_stdin_reader, std::io::stdin().read); on the Windows LEGACY console (no ENABLE_VIRTUAL_TERMINAL_INPUT) the special keys produce console KEY_EVENTs, NOT stdin bytes, so the byte-pump sees nothing → those keys are DEAD. Enabling ENABLE_VIRTUAL_TERMINAL_INPUT was rejected (W7 dc07c39): on Windows Terminal it yields harness-specific win32-input-mode + broke ctrl-b detach. FIX (agnostic, full fidelity): on Windows, replace the stdin byte-read with a crossterm EVENT source (crossterm 0.28 already a dep; the picker already reads events) and translate each KeyEvent → STANDARD xterm VT bytes via a PURE translate_key_event(KeyEvent)->Vec (copy a known-correct xterm table verbatim, ADR-0001 spirit), forwarded through the SAME rc pump — the harness receives ordinary xterm VT (harness-AGNOSTIC, no win32-input-mode). Press-only (drop Repeat/Release). Detach stays the ctrl-b+'d' PREFIX, event-sourced (doyle Option B): Ctrl+B arms; armed+plain-'d'⇒Detach; armed+Ctrl+B⇒emit literal 0x02; armed+other⇒0x02 then translate(other). Non-tty stdin (piped/tests) → FALL BACK to the byte-read path (keeps e2e byte-injection working). UNIX UNCHANGED (its raw-mode byte stream already delivers proper VT; cfg-split, zero Unix regression). SUPERSEDES the W7 normalize_key_byte swap on Windows — the translator emits 0x7f for Backspace and 0x08 for Ctrl+Backspace natively (REQ-HAZARD-RC-INPUT-KEY-ENCODING folded in). NO int (a live interactive console can't be driven in CI — HITL, REQ-RUN-PICKER/RC-1 precedent); the exhaustive non-vacuous translate_key_event mapping unit + the event-detach unit ARE the surface. (v0.13.0) traceability Quality audit (advisory) 2026-06-21T07:19:09.8954554Z - Required stages: doc, impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8954593Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8954705Z ### REQ-HAZARD-PTY-INPUT-WRITER-WEDGE traceability Quality audit (advisory) 2026-06-21T07:19:09.8960915Z - Title: Pasting into an `spt rc` session WEDGES the broker — after a paste the operator can no longer type AND can no longer attach to NEW or EXISTING sessions (`brain IPC read deadline`). ROOT (doyle /diagnose, code-grounded): the operator-keystroke path rc -> net-stream Input -> serve_attach (attach.rs:197 brain.send_effect) -> KIND_INPUT -> broker dispatch loop (broker.rs:1091) -> dispatch_input (broker.rs:1459) -> session.write_input(&bytes) runs SYNCHRONOUSLY on the broker request-handling thread. W1b (REQ-HAZARD-EFFECT-JOURNAL-PTY-WEDGE) released the journal lock across the effect (fix 1) + made PtyWrite ephemeral/no-fsync (fix 3) but EXPLICITLY DEFERRED fix (2) — bound/fail-fast the PtyWrite itself. A single keystroke never fills the ConPTY input buffer; a PASTE BURST does -> write_input blocks -> the dispatch thread cannot service the next frame (a re-attach subscribe, a become_controller restore-write, an inject-floor flush) -> wedge. Not a bug-2 regression (the byte path funnels to the same write_input; paste just reliably fills the buffer). FIX (doyle design, V0.13.0-P0-PTY-INPUT-WRITER-DESIGN.md, CONTEXT L33 broker-owns-PTY/minimal + L435 SessionSurface + single-writer pattern): one dedicated per-session INPUT-WRITER THREAD = the SOLE caller of the blocking write_input, fed by a BOUNDED FIFO channel; every caller (dispatch_input, serve_attach->send_effect, inject-floor flush) ENQUEUES + returns immediately, never blocks. A blocked/slow harness blocks ONLY its own writer thread, never the broker dispatch. Backpressure (operator ruling): queue full => DROP excess input + stamp the session INPUT_BACKPRESSURE (visible health signal); the daemon NEVER wedges; a merely-slow harness self-heals as the writer drains. Exactly-once preserved (PtyWrite ephemeral: apply_once effect = the non-blocking enqueue => Applied; ack now means accepted+ordered, benign — rc does not gate on landing); order preserved (single FIFO + single writer); inject-floor (W2 Layer C) choreography moves to the lone writer. Completes the W1b-deferred fix (2), cross-platform (cfg(unix) forkpty park folds in). (v0.13.0) traceability Quality audit (advisory) 2026-06-21T07:19:09.8961154Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8961279Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8961388Z ### REQ-SESSION-RESUME-TEMPLATE traceability Quality audit (advisory) 2026-06-21T07:19:09.8968237Z - Title: Resuming an endpoint session that HAS conversation history brings up a BLANK session. ROOT (doyle, code-grounded + CONTEXT — case-3 spt-core MISSING feature, NOT a perri docs-miss): CONTEXT L127-129 already defines the resume-session seam ('continue-existing: resume an existing harness session under the adapter — its NATIVE resume'), and the manifest already has the resume-variant pattern (Session has BOTH psyche_init AND psyche_resume, manifest.rs:217-219) — but the agent's own session has ONLY self_ (`[session.self]`, no resume sibling). cmd_endpoint_run (cli.rs:1304) re-passes the session_id through `[session.self]` on resume (resume.unwrap_or_else(mint_session_id)), so the adapter's FRESH command (e.g. `claude --session-id ..`) runs again instead of the harness NATIVE resume (`claude -r ..`) -> CC starts a fresh transcript -> blank. spt-core forwards session_id + cwd faithfully; it just has no way to express the native-resume invocation. SECOND GAP: CC resolves a transcript by session_id + cwd, but the session ledger records only {ts, session_id, trigger} (no cwd), so picker Resume-from-history (cross-project rows) can't restore the right cwd. FIX (doyle design, V0.13.0-P2-SESSION-RESUME-DESIGN.md, mirrors psyche_init->psyche_resume exactly): (A) add a `[session.resume]` role (resume: Option on Session + roles()/is_empty()); cmd_endpoint_run selects it when --resume is set AND it's declared (fill {id}/{session_id}=resumed id/{session_name} + the resume cwd), else FALL BACK to `[session.self]` (full back-compat). (B) record cwd PER ledger row (operator ruling): {ts, session_id, trigger, cwd} additive serde-default; resume cwd = resumed row cwd -> else perch info.cwd -> else current_dir (back-compat for old rows + single-project endpoints); picker threads the selected row's cwd through Outcome::Run -> cmd_endpoint_run. (C) public docs (MANIFEST + harness-contract) teach `[session.resume]` so perri builds the adapter side BLIND. Adapter follow-on (perri, AFTER spt-core ships+docs): declare `[session.resume] command = claude -r {session_id} --remote-control {id} --dangerously-skip-permissions` from the resume cwd. Completes REQ-READY-AGENT-RESUME / REQ-RUN-PICKER resume-from-history. (v0.13.0) traceability Quality audit (advisory) 2026-06-21T07:19:09.8968384Z - Required stages: doc, impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8968417Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8968520Z ### REQ-RC-WIN-PASTE traceability Quality audit (advisory) 2026-06-21T07:19:09.8973222Z - Title: In an `spt rc` session neither ctrl+V nor right-click pastes (CC explicitly supports ctrl+V). ROOT (doyle /diagnose): RawGuard does only enable_raw_mode (no bracketed paste / no mouse capture / no clipboard interception); the Windows console delivers a paste as synthetic per-char KEY EVENTs (no crossterm Event::Paste), and ctrl+V translates to bare ^V forwarded to CC — but CC runs DAEMON-SIDE with NO access to the operator's LOCAL clipboard, so remote paste is fundamentally CLIENT-ORIGINATED. A multi-line paste-as-keys also becomes a \r submit-storm. FIX (doyle design, V0.13.0-P1-RC-PASTE-DESIGN.md, cfg(windows), folds into the bug-2 event path): on a paste gesture rc reads the LOCAL clipboard + forwards a BRACKETED PASTE (ESC[200~ + content + ESC[201~); CC has bracketed-paste mode on (its TUI sets ESC[?2004h) so it treats it as a paste — content intact, no submit-storm, harness-AGNOSTIC. ctrl+V: intercept Char('v')+CONTROL in the event loop -> read_clipboard -> bracketed paste. Right-click: RawGuard also EnableMouseCapture (disables console QuickEdit + enables ENABLE_MOUSE_INPUT so right-click surfaces as Event::Mouse on legacy cmd/powershell) -> right-button -> read_clipboard -> bracketed paste; DROP all other mouse (CC has no mouse features, operator-confirmed, so capture costs nothing). read_clipboard = clipboard-win crate (cfg(windows), minimal); empty/failed = clean no-op. Content forwarded VERBATIM (literal pasted text, no per-char translation). Unix UNCHANGED (its terminal pastes natively through the byte pump). DEPENDS ON P0 (a paste chunk must not wedge the broker). (v0.13.0) traceability Quality audit (advisory) 2026-06-21T07:19:09.8973539Z - Required stages: doc, impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8973576Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8973680Z ### REQ-HAZARD-INPUT-ACK-BACKPRESSURE traceability Quality audit (advisory) 2026-06-21T07:19:09.8980964Z - Title: A FLOOD of operator input on one brain↔broker connection deadlocks the broker PERMANENTLY (entire broker — no new/existing attach; the controller stays latched because the per-conn handler can't process the detach). ROOT (doyle /diagnose, code-grounded + HITL capture, the v0.13.0 P1 ctrl+V re-open): `serve_attach` processes a whole `NetStreamData` batch of N operator `Input` records in its inner `for rec in decoder.push()` loop, calling `brain.send_effect(op_id, &bytes)` N times WITHOUT returning to `read_event()` — so the brain writes N `KIND_INPUT` frames back-to-back and drains nothing. The broker's single-threaded per-conn handler answers EACH with `send_frame(applied_envelope)` on the SAME conn (B5 exactly-once ack, KNOWN-HAZARDS 7.2). With the brain not reading, the broker→brain return direction fills (~10 frames = the IPC pipe buffer) → `send_frame` BLOCKS → the handler stops reading → the brain's writes block too → mutual full-duplex DEADLOCK. Capture pinned it: 11 input frames, write_input 11/11 (P0 holds — the PTY write is fine), ack send START=11 / END=10 (frame #11's applied-ack never returns). Same class as the v0.12.1 L0 two-conn split. Windows Terminal's ctrl+V paste accelerator was the trigger (injects the clipboard as a char-by-char key flood) but the deadlock is generic to ANY input flood, NOT ctrl+V-specific and NOT a P0 (PTY-write) or W1 (output-drain) regression. The applied-ack is load-bearing ONLY for `shellchan` (one-at-a-time spool delivery WAITS on `BrokerEvent::Applied`); `serve_attach` DISCARDS it (the operator/rc path is fire-and-forward, op_id for dedup only, never gates on the ack). FIX (doyle-approved): CONDITIONAL ACK — `InputReq` gains `ack: bool` (serde default = true, N-1-safe: an older brain's input still acks = today's behavior). `serve_attach`'s operator path calls `send_effect_no_ack` (ack=false) → `dispatch_input` writes NO applied frame → the per-conn handler never writes back while servicing the flood → it always drains → no deadlock (cures ANY input flood). `shellchan` keeps `send_effect` (ack=true) and its `Applied`-wait. Exactly-once PRESERVED: the broker still dedups by (session, op_id) at the applied-set regardless of the ack. N-1 caveat: an OLD resident broker (self-update window) ignores `ack=false` → still acks → the deadlock persists until a broker restart (inherent KNOWN-HAZARDS 7.9 broker-resident-wire-change class). (v0.13.0) traceability Quality audit (advisory) 2026-06-21T07:19:09.8981108Z - Required stages: doc, impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.8981142Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8981227Z ### REQ-RC-MOUSE-FORWARD traceability Quality audit (advisory) 2026-06-21T07:19:09.8985513Z - Title: On Windows, `spt rc` must FORWARD scroll-wheel events to the harness when the harness has mouse reporting on. ROOT (operator HITL): P1's RawGuard EnableMouseCapture (added for right-click paste, REQ-RC-WIN-PASTE) makes Windows Terminal forward ALL mouse — including the scroll wheel — to rc instead of scrolling its own buffer, but the rc mouse handler dropped everything except right-button-down → scroll DIED (and WT's native scrollback is stolen by the capture). Operator ruling: keep mouse capture + right-click bracketed paste AND forward scroll to the harness. FIX (doyle design, cfg(windows), folds into the rc mouse handler): TRACK the harness's mouse-reporting mode by scanning its OUTPUT stream for the DECSET set/reset — ESC[?1000h/1002h/1003h (mouse on) + ESC[?1006h (SGR ext) and their ...l (off) — into a shared MouseMode{enabled,sgr} (pump writes from output, stdin reader reads); the scan survives a sequence SPLIT across output chunks (a bounded carry buffer). The mouse handler: right-button-DOWN -> bracketed clipboard paste (unchanged, REQ-RC-WIN-PASTE); ScrollUp/Down -> translate to an xterm SGR mouse report (ESC[<64;col+1;row+1M up / ESC[<65;..M down, 0-based crossterm -> 1-based xterm) and forward ONLY when enabled && sgr (else DROP — a legacy X10 report the harness may not parse is garbage); Moved/drag/left/middle -> DROP (scroll is the operator's need; click-forward risks garbage, no click-to-position). Unix UNCHANGED (no capture; the terminal scrolls natively). (v0.13.0) traceability Quality audit (advisory) 2026-06-21T07:19:09.8985828Z - Required stages: doc, impl, unit traceability Quality audit (advisory) 2026-06-21T07:19:09.8985861Z traceability Quality audit (advisory) 2026-06-21T07:19:09.8985972Z ### REQ-HAZARD-CONTROLLER-WRITER-REORDER traceability Quality audit (advisory) 2026-06-21T07:19:09.8999790Z - Title: Two `controller_writer` threads must never race ONE brain↔broker connection's socket. ROOT (doyle, instrumented RACEDIAG repro on kitsubito): on a brain-restart re-serve the handoff brain registers as controller on the SAME session TWICE over the SAME `Brain::conn` socket — (1) `Brain::handoff` eagerly `subscribe(prior.session_id, prior.next_seq=1)` → `become_controller(from_seq=1)`, initial=[1], spawns writer-A (writes seq 1); (2) `serve_attach` re-handles the replayed `Request{from_seq:0}` → `attach_as(sid,0)` → `become_controller(from_seq=0)`, initial=[0,1], spawns writer-B (writes 0 then 1). `become_controller` (broker.rs) drops the prior `ControllerSink` (its `tx`) but does NOT stop the prior writer thread — writer-A keeps flushing its owned `initial` batch, and both writers hold clones of the same `SharedSend` (`Arc>`) with NO inter-thread ordering. When writer-A's seq 1 wins the socket before writer-B's seq 0, the strict legacy consumer (brain.rs read_event reject-gap path) sees `output gap: got seq 1 want 0` → the test `attach_survives_target_brain_restart_exactly_once` panics at `.expect("re-serve")` OR HANGS in `render_until` (serve thread died on the gap → MARKER_TWO never reaches the wire). `prior.next_seq` is life1's CONSUMPTION cursor, NOT life2's connection state — life2's socket has been sent NOTHING, so a `from_seq=0` full replay on a connection that already streamed seq 1 is contradictory. Snap-above tolerance ALONE can't fix it (it would dedup-drop the late seq 0 → byte loss → the exactly-once byte-identity assert fails). PRE-EXISTING, surfaced by the v0.13.0 green-both-runners release gate; P1b is INNOCENT (its diff touches only input-ack machinery, proven mechanically + the test passes post-P1b in isolation). Sibling flaky cluster: `inject_control_wedge::g2`, `broker::spawn_env_reaches_child`. INVARIANT: on a single brain↔broker connection the controller output-frame stream is monotonic non-decreasing in seq (modulo dedup re-sends); exactly ONE `controller_writer` is ever live per connection; a SUPERSEDED writer writes NO further frames; a re-serve never replays a seq below what the connection already received. FIX (doyle design, corrected at the gate 2026-06-20): fix #1 as designed ('drop handoff's eager subscribe so serve_attach's attach_as is the sole registration') was REVERTED — handoff's `subscribe(prior.next_seq)` IS the standalone-resume mechanism (the brain-only update engine `apply_brain_only` + the `handoff`/`idempotent`/`daemon_e2e` int tests replay output through it with NO `serve_attach`; dropping it hung every resume-via-handoff test). The shipped fix is three parts: (1) CORRECTNESS — `Brain::handoff` seeds `session_cursors` at `prior.next_seq` so the consumer runs the production dedup-below+snap-above path, never the strict reject-gap legacy trap; this is COMPLETE (not merely tolerant) because every `controller_writer` emits an ASCENDING seq stream and the surviving writer (serve_attach's attach_as(sid,0)) offers the complete `[0,end]` range, so a snap-above merge of ascending writers delivers `[K,end]` with no skip/dup (first sighting of any seq>M is preceded by M on that writer). (2) INVARIANT — `controller_writer`'s INITIAL-BATCH replay is epoch-gated: `controller_epoch` is a shared `Arc`, the writer re-reads it UNDER `send.lock()` (atomically with `write_frame`) and returns the instant it is superseded — no check-then-block-then-write window, no superseded replay (W1-safe: never blocks the drain under `Mutex`). The LIVE loop is NOT gated (new output only flows to the current controller; a superseded writer must still deliver its terminal `Displaced` kick — gating it suppressed the loud-take notice; it ends on `tx`-drop). (3) EXPLICIT-RESUME / OPERATOR-STREAM BOUNDARY (the LOAD-BEARING fix — kitsubito RACEDIAG ~33% repro the keystones missed) — `Brain::subscribe_with` (shared by attach/attach_as) resets the resume-mode dedup cursor to `from_seq`. The handoff eager subscribe makes serve_attach's brain receive the replay's seq K BEFORE the operator Request is processed (`attached`=false); that frame is dropped by the if-attached forward gate but the snap-above cursor already advanced past K, and `attach_as(sid,0)`'s re-subscribe used to leave the cursor advanced → the broker's re-send of seq K arrives below it, deduped, never forwarded → operator viewport forward-gap (silent content loss in the real rc consumer). Resetting to from_seq on the attach_as re-subscribe re-delivers from 0 (operator dedups the overlap) so seq K reaches the viewport. The epoch gate (2) is sound (RACEDIAG: zero socket interleaving above K); cold-start brains (empty map — production dispatch serve) keep the legacy next_seq path, so production is unaffected. (v0.13.0) traceability Quality audit (advisory) 2026-06-21T07:19:09.9000182Z - Required stages: doc, impl, unit, int traceability Quality audit (advisory) 2026-06-21T07:19:09.9000215Z traceability Quality audit (advisory) 2026-06-21T07:19:09.9000320Z ### REQ-HAZARD-CONTROLLER-RETAKE-FLOOR traceability Quality audit (advisory) 2026-06-21T07:19:09.9004559Z - Title: `become_controller` should STRUCTURALLY refuse a controller re-take whose `from_seq` falls below the connection's already-delivered contiguous floor — making the P1c reorder invariant un-reintroducible by a future caller, not just removed at the one caller. ROOT/SCOPE (doyle proposed, P1c gate dialogue): P1c fixes REQ-HAZARD-CONTROLLER-WRITER-REORDER three ways (handoff single-take + epoch-gate-under-lock + session_cursors seed), removing the one decreasing-floor double-take and bounding any other to already-committed-only. A self-enforcing broker guard would refuse the bad SHAPE outright. BLOCKER: the obvious predicate (`from_seq >= delivered_through`) is UNSAFE because `delivered_through` is SESSION-WIDE (the `Arc` on `OutputLog`, shared by all controllers/viewers, advanced monotonic-MAX; `resume_seq` reads it) — a normal fresh-operator `from_seq=0` attach to a producing session legitimately sits below it (full ring replay + consumer dedup-below/snap-above), and monotonic-MAX can't distinguish the hazard (a `seq1`-without-`seq0` write reads as `2`). The structurally-correct guard needs a NEW per-connection contiguous-sent cursor (the true highest-contiguous seq this socket has received) that does not exist today; the guard then refuses a re-take below THAT. Bigger than P1c; no live gap (P1c fully fixes the actual bug). Mint/refine stages when the per-connection cursor is built. (v0.13.0 follow-up, post-ship) traceability Quality audit (advisory) 2026-06-21T07:19:09.9004662Z - Required stages: traceability Quality audit (advisory) 2026-06-21T07:19:09.9004696Z traceability Quality audit (advisory) 2026-06-21T07:19:09.9004807Z ## How to report back traceability Quality audit (advisory) 2026-06-21T07:19:09.9004841Z traceability Quality audit (advisory) 2026-06-21T07:19:09.9005000Z For every (requirement, failing criterion) pair, emit one finding: traceability Quality audit (advisory) 2026-06-21T07:19:09.9005043Z traceability Quality audit (advisory) 2026-06-21T07:19:09.9005124Z { traceability Quality audit (advisory) 2026-06-21T07:19:09.9005229Z "code": "requirement_quality", traceability Quality audit (advisory) 2026-06-21T07:19:09.9005327Z "requirementId": "REQ-...", traceability Quality audit (advisory) 2026-06-21T07:19:09.9005494Z "criterion": "singular" | "verifiable" | "atomic" | "active-voice", traceability Quality audit (advisory) 2026-06-21T07:19:09.9005594Z "message": "", traceability Quality audit (advisory) 2026-06-21T07:19:09.9005718Z "suggestedRevision": "" traceability Quality audit (advisory) 2026-06-21T07:19:09.9005809Z } traceability Quality audit (advisory) 2026-06-21T07:19:09.9005834Z traceability Quality audit (advisory) 2026-06-21T07:19:09.9006008Z Wrap your response as { "findings": [ ... ] } listing only your concerns; the traceability Quality audit (advisory) 2026-06-21T07:19:09.9006148Z deterministic findings above don't need to be repeated. traceability Post Run actions/checkout@v5 2026-06-21T07:19:09.9099614Z Post job cleanup. traceability Post Run actions/checkout@v5 2026-06-21T07:19:09.9755726Z [command]/usr/bin/git version traceability Post Run actions/checkout@v5 2026-06-21T07:19:09.9785502Z git version 2.43.0 traceability Post Run actions/checkout@v5 2026-06-21T07:19:09.9815693Z Temporarily overriding HOME='/home/reavus/actions-runner/_work/_temp/574d6b5b-8ded-4da7-b7d9-9a16688f45da' before making global git config changes traceability Post Run actions/checkout@v5 2026-06-21T07:19:09.9816282Z Adding repository directory to the temporary git global config as a safe directory traceability Post Run actions/checkout@v5 2026-06-21T07:19:09.9819473Z [command]/usr/bin/git config --global --add safe.directory /home/reavus/actions-runner/_work/spt-core/spt-core traceability Post Run actions/checkout@v5 2026-06-21T07:19:09.9846129Z [command]/usr/bin/git config --local --name-only --get-regexp core\.sshCommand traceability Post Run actions/checkout@v5 2026-06-21T07:19:09.9870647Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'core\.sshCommand' && git config --local --unset-all 'core.sshCommand' || :" traceability Post Run actions/checkout@v5 2026-06-21T07:19:10.0053137Z [command]/usr/bin/git config --local --name-only --get-regexp http\.https\:\/\/github\.com\/\.extraheader traceability Post Run actions/checkout@v5 2026-06-21T07:19:10.0070717Z http.https://github.com/.extraheader traceability Post Run actions/checkout@v5 2026-06-21T07:19:10.0077502Z [command]/usr/bin/git config --local --unset-all http.https://github.com/.extraheader traceability Post Run actions/checkout@v5 2026-06-21T07:19:10.0101545Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'http\.https\:\/\/github\.com\/\.extraheader' && git config --local --unset-all 'http.https://github.com/.extraheader' || :" traceability Post Run actions/checkout@v5 2026-06-21T07:19:10.0289892Z [command]/usr/bin/git config --local --name-only --get-regexp ^includeIf\.gitdir: traceability Post Run actions/checkout@v5 2026-06-21T07:19:10.0312593Z [command]/usr/bin/git submodule foreach --recursive git config --local --show-origin --name-only --get-regexp remote.origin.url traceability Complete job 2026-06-21T07:19:10.0607297Z Cleaning up orphan processes test (self-hosted, Windows, hfenduleam) Set up job 2026-06-21T07:21:06.7328335Z Current runner version: '2.335.1' test (self-hosted, Windows, hfenduleam) Set up job 2026-06-21T07:21:06.7335959Z Runner name: 'hfenduleam' test (self-hosted, Windows, hfenduleam) Set up job 2026-06-21T07:21:06.7336418Z Runner group name: 'Default' test (self-hosted, Windows, hfenduleam) Set up job 2026-06-21T07:21:06.7336944Z Machine name: 'HFENDULEAM' test (self-hosted, Windows, hfenduleam) Set up job 2026-06-21T07:21:06.7338920Z ##[group]GITHUB_TOKEN Permissions test (self-hosted, Windows, hfenduleam) Set up job 2026-06-21T07:21:06.7340319Z Contents: read test (self-hosted, Windows, hfenduleam) Set up job 2026-06-21T07:21:06.7340670Z Metadata: read test (self-hosted, Windows, hfenduleam) Set up job 2026-06-21T07:21:06.7341000Z Packages: read test (self-hosted, Windows, hfenduleam) Set up job 2026-06-21T07:21:06.7341332Z ##[endgroup] test (self-hosted, Windows, hfenduleam) Set up job 2026-06-21T07:21:06.7342594Z Secret source: Actions test (self-hosted, Windows, hfenduleam) Set up job 2026-06-21T07:21:06.7343080Z Prepare workflow directory test (self-hosted, Windows, hfenduleam) Set up job 2026-06-21T07:21:06.7621754Z Prepare all required actions test (self-hosted, Windows, hfenduleam) Set up job 2026-06-21T07:21:06.7646828Z Getting action download info test (self-hosted, Windows, hfenduleam) Set up job 2026-06-21T07:21:07.0790346Z Download action repository 'actions/checkout@v5' (SHA:93cb6efe18208431cddfb8368fd83d5badbf9bfd) test (self-hosted, Windows, hfenduleam) Set up job 2026-06-21T07:21:07.6430263Z Complete job name: test (self-hosted, Windows, hfenduleam) test (self-hosted, Windows, hfenduleam) Reap stray workspace daemons (pre-checkout exe-lock guard) 2026-06-21T07:21:07.7155093Z ##[group]Run Get-Process spt,notify-shell -ErrorAction SilentlyContinue | test (self-hosted, Windows, hfenduleam) Reap stray workspace daemons (pre-checkout exe-lock guard) 2026-06-21T07:21:07.7156000Z Get-Process spt,notify-shell -ErrorAction SilentlyContinue | test (self-hosted, Windows, hfenduleam) Reap stray workspace daemons (pre-checkout exe-lock guard) 2026-06-21T07:21:07.7156596Z  Where-Object { $_.Path -like "$env:GITHUB_WORKSPACE\*" } | test (self-hosted, Windows, hfenduleam) Reap stray workspace daemons (pre-checkout exe-lock guard) 2026-06-21T07:21:07.7157163Z  Stop-Process -Force -ErrorAction SilentlyContinue test (self-hosted, Windows, hfenduleam) Reap stray workspace daemons (pre-checkout exe-lock guard) 2026-06-21T07:21:07.7157605Z exit 0 test (self-hosted, Windows, hfenduleam) Reap stray workspace daemons (pre-checkout exe-lock guard) 2026-06-21T07:21:07.7231257Z shell: C:\Program Files\PowerShell\7\pwsh.EXE -command ". '{0}'" test (self-hosted, Windows, hfenduleam) Reap stray workspace daemons (pre-checkout exe-lock guard) 2026-06-21T07:21:07.7231906Z ##[endgroup] test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:21:08.0298040Z ##[group]Run actions/checkout@v5 test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:21:08.0298551Z with: test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:21:08.0298865Z repository: SaberMage/spt-core test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:21:08.0301890Z token: *** test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:21:08.0302203Z ssh-strict: true test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:21:08.0302511Z ssh-user: git test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:21:08.0302831Z persist-credentials: true test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:21:08.0303165Z clean: true test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:21:08.0303481Z sparse-checkout-cone-mode: true test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:21:08.0303861Z fetch-depth: 1 test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:21:08.0304224Z fetch-tags: false test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:21:08.0304533Z show-progress: true test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:21:08.0304834Z lfs: false test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:21:08.0305132Z submodules: false test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:21:08.0305462Z set-safe-directory: true test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:21:08.0305829Z ##[endgroup] test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:21:08.2257450Z Syncing repository: SaberMage/spt-core test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:21:08.2258676Z ##[group]Getting Git version info test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:21:08.2259174Z Working directory is 'C:\actions-runner\_work\spt-core\spt-core' test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:21:08.2505524Z [command]"c:\program files\git\cmd\git.exe" version test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:21:08.2711872Z git version 2.43.0.windows.1 test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:21:08.2737896Z ##[endgroup] test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:21:08.2745443Z Copying 'C:\Users\decid\.gitconfig' to 'C:\actions-runner\_work\_temp\9afe7cde-335e-4203-b2ad-c0c63894bece\.gitconfig' test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:21:08.2759235Z Temporarily overriding HOME='C:\actions-runner\_work\_temp\9afe7cde-335e-4203-b2ad-c0c63894bece' before making global git config changes test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:21:08.2760186Z Adding repository directory to the temporary git global config as a safe directory test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:21:08.2763945Z [command]"c:\program files\git\cmd\git.exe" config --global --add safe.directory C:\actions-runner\_work\spt-core\spt-core test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:21:08.3042138Z [command]"c:\program files\git\cmd\git.exe" config --local --get remote.origin.url test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:21:08.3290743Z https://github.com/SaberMage/spt-core test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:21:08.3318230Z ##[group]Removing previously created refs, to avoid conflicts test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:21:08.3323265Z [command]"c:\program files\git\cmd\git.exe" rev-parse --symbolic-full-name --verify --quiet HEAD test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:21:08.3509956Z HEAD test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:21:08.3738453Z ##[endgroup] test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:21:08.3741962Z [command]"c:\program files\git\cmd\git.exe" submodule status test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:21:08.7514949Z ##[group]Cleaning the repository test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:21:08.7520721Z [command]"c:\program files\git\cmd\git.exe" clean -ffdx test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:21:10.0241585Z Removing target/ test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:21:10.0276354Z [command]"c:\program files\git\cmd\git.exe" reset --hard HEAD test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:21:10.0746530Z HEAD is now at 62ed011 Merge 77378b113f546c0fb9baed3bf6bd82525a0bb28f into 86f20ac831033a20bd5e096b1c318a75249179f3 test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:21:10.0778123Z ##[endgroup] test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:21:10.0782731Z ##[group]Disabling automatic garbage collection test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:21:10.0787847Z [command]"c:\program files\git\cmd\git.exe" config --local gc.auto 0 test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:21:10.1024714Z ##[endgroup] test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:21:10.1025138Z ##[group]Setting up auth test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:21:10.1031300Z [command]"c:\program files\git\cmd\git.exe" config --local --name-only --get-regexp core\.sshCommand test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:21:10.1260021Z [command]"c:\program files\git\cmd\git.exe" submodule foreach --recursive "sh -c \"git config --local --name-only --get-regexp 'core\.sshCommand' && git config --local --unset-all 'core.sshCommand' || :\"" test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:21:10.5603717Z [command]"c:\program files\git\cmd\git.exe" config --local --name-only --get-regexp http\.https\:\/\/github\.com\/\.extraheader test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:21:10.5838384Z [command]"c:\program files\git\cmd\git.exe" submodule foreach --recursive "sh -c \"git config --local --name-only --get-regexp 'http\.https\:\/\/github\.com\/\.extraheader' && git config --local --unset-all 'http.https://github.com/.extraheader' || :\"" test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:21:10.9453246Z [command]"c:\program files\git\cmd\git.exe" config --local --name-only --get-regexp ^includeIf\.gitdir: test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:21:10.9678518Z [command]"c:\program files\git\cmd\git.exe" submodule foreach --recursive "git config --local --show-origin --name-only --get-regexp remote.origin.url" test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:21:11.3431070Z [command]"c:\program files\git\cmd\git.exe" config --local http.https://github.com/.extraheader "AUTHORIZATION: basic ***" test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:21:11.3681729Z ##[endgroup] test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:21:11.3682162Z ##[group]Fetching the repository test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:21:11.3688537Z [command]"c:\program files\git\cmd\git.exe" -c protocol.version=2 fetch --no-tags --prune --no-recurse-submodules --depth=1 origin +62ed01167c9aa4bf0fe4930e6f0f9d7cfa297b3f:refs/remotes/pull/27/merge test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:21:11.9665761Z ##[endgroup] test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:21:11.9666213Z ##[group]Determining the checkout info test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:21:11.9666537Z ##[endgroup] test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:21:11.9671789Z [command]"c:\program files\git\cmd\git.exe" sparse-checkout disable test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:21:11.9955104Z [command]"c:\program files\git\cmd\git.exe" config --local --unset-all extensions.worktreeConfig test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:21:12.0186087Z ##[group]Checking out the ref test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:21:12.0190838Z [command]"c:\program files\git\cmd\git.exe" checkout --progress --force refs/remotes/pull/27/merge test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:21:12.0511852Z HEAD is now at 62ed011 Merge 77378b113f546c0fb9baed3bf6bd82525a0bb28f into 86f20ac831033a20bd5e096b1c318a75249179f3 test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:21:12.0535851Z ##[endgroup] test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:21:12.0764397Z [command]"c:\program files\git\cmd\git.exe" log -1 --format=%H test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T07:21:12.0956320Z 62ed01167c9aa4bf0fe4930e6f0f9d7cfa297b3f test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:12.1205957Z ##[group]Run cargo nextest run --workspace --no-fail-fast -E 'not ( (package(spt-daemon) & kind(test) & binary(/^(attach|brain_swap|broker|budget|daemon_e2e|daemon_lifecycle_real_brain|digest|dispatch|driven_by_selfheal|handoff|idempotent|inject_control_wedge|input_ack_deadlock|resume|shellchan|two_origin_spanning|twohost)$/)) | (package(spt) & kind(test) & binary(/^(attach_wedge_e2e|bind_cwd_project_e2e|brain_respawn_rename|brain_restart_psyche_dup_e2e|brain_split|brain_survive|dummy_harness_e2e|gateway_owner_shell_e2e|job_escape_e2e|livehost_bootgate_e2e|livehost_bootrace_e2e|livehost_nonresident_e2e|livehost_psyche_fail_e2e|n1_pairing|oneliner_e2e|resume_template_e2e|unhost_psyche_reap_e2e)$/)) | (package(spt-term) & kind(test)) )' test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:12.1209275Z cargo nextest run --workspace --no-fail-fast -E 'not ( (package(spt-daemon) & kind(test) & binary(/^(attach|brain_swap|broker|budget|daemon_e2e|daemon_lifecycle_real_brain|digest|dispatch|driven_by_selfheal|handoff|idempotent|inject_control_wedge|input_ack_deadlock|resume|shellchan|two_origin_spanning|twohost)$/)) | (package(spt) & kind(test) & binary(/^(attach_wedge_e2e|bind_cwd_project_e2e|brain_respawn_rename|brain_restart_psyche_dup_e2e|brain_split|brain_survive|dummy_harness_e2e|gateway_owner_shell_e2e|job_escape_e2e|livehost_bootgate_e2e|livehost_bootrace_e2e|livehost_nonresident_e2e|livehost_psyche_fail_e2e|n1_pairing|oneliner_e2e|resume_template_e2e|unhost_psyche_reap_e2e)$/)) | (package(spt-term) & kind(test)) )' test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:12.1279763Z shell: C:\Program Files\PowerShell\7\pwsh.EXE -command ". '{0}'" test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:12.1280068Z ##[endgroup] test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:13.5324325Z Compiling proc-macro2 v1.0.106 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:13.5324775Z Compiling quote v1.0.45 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:13.5325011Z Compiling unicode-ident v1.0.24 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:13.5325270Z Compiling cfg-if v1.0.4 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:13.5325456Z Compiling serde_core v1.0.228 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:13.5325676Z Compiling serde v1.0.228 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:13.5325902Z Compiling windows-link v0.2.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:13.5326286Z Compiling typenum v1.20.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:13.5326647Z Compiling version_check v0.9.5 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:13.5327198Z Compiling portable-atomic v1.13.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:13.5327638Z Compiling getrandom v0.3.4 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:13.5327995Z Compiling find-msvc-tools v0.1.9 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:13.5328341Z Compiling critical-section v1.2.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:13.5328680Z Compiling shlex v2.0.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:13.5328963Z Compiling memchr v2.8.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:13.5329267Z Compiling subtle v2.6.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:13.6018434Z Compiling windows-sys v0.61.2 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:13.6244301Z Compiling equivalent v1.0.2 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:13.6662357Z Compiling semver v1.0.28 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:13.6798661Z Compiling smallvec v1.15.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:13.7464426Z Compiling itoa v1.0.18 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:13.7639058Z Compiling getrandom v0.2.17 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:13.8050286Z Compiling cpufeatures v0.2.17 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:13.8945172Z Compiling rustc_version v0.4.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:13.9603668Z Compiling hashbrown v0.17.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:13.9682196Z Compiling generic-array v0.14.7 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:13.9682674Z Compiling pin-project-lite v0.2.17 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:13.9761997Z Compiling rand_core v0.10.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:14.0210869Z Compiling getrandom v0.4.2 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:14.0473685Z Compiling log v0.4.32 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:15.2997353Z Compiling bitflags v2.12.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:17.9674164Z Compiling winapi v0.3.9 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:18.0431877Z Compiling futures-core v0.3.32 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:18.0798651Z Compiling curve25519-dalek v4.1.3 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:18.1126676Z Compiling bytes v1.11.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:18.1546880Z Compiling jobserver v0.1.34 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:18.2009464Z Compiling rand_core v0.6.4 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:18.2038148Z Compiling zerocopy v0.8.50 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:18.2075384Z Compiling ahash v0.8.12 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:18.2181947Z Compiling stable_deref_trait v1.2.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:18.2863689Z Compiling cc v1.2.63 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:18.3711910Z Compiling signature v2.2.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:18.3712332Z Compiling libc v0.2.186 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:18.4857700Z Compiling indexmap v2.14.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:18.5389534Z Compiling ed25519 v2.2.3 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:22.3224138Z Compiling syn v2.0.117 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:22.3494986Z Compiling pkg-config v0.3.33 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:22.4125840Z Compiling zmij v1.0.21 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:22.4213080Z Compiling vcpkg v0.2.15 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:22.4641302Z Compiling serde_json v1.0.150 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:22.5842837Z Compiling autocfg v1.5.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:22.7334808Z Compiling slab v0.4.12 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:22.8039099Z Compiling socket2 v0.6.4 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:22.8722846Z Compiling mio v1.2.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:22.8798461Z Compiling fastrand v2.4.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:22.9585772Z Compiling futures-io v0.3.32 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:23.0054144Z Compiling futures-sink v0.3.32 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:23.0694463Z Compiling rustversion v1.0.22 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:23.1390160Z Compiling futures-channel v0.3.32 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:23.1966480Z Compiling fallible-iterator v0.3.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:23.1967009Z Compiling fallible-streaming-iterator v0.1.9 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:23.2057170Z Compiling windows_x86_64_msvc v0.52.6 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:23.2302211Z Compiling futures-task v0.3.32 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:23.4342520Z Compiling fnv v1.0.7 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:23.4385409Z Compiling cfg_aliases v0.2.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:23.4785453Z Compiling strsim v0.11.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:23.5141280Z Compiling crypto-common v0.1.7 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:23.5317736Z Compiling block-buffer v0.10.4 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:23.5318285Z Compiling litemap v0.8.2 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:23.5506331Z Compiling writeable v0.6.3 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:23.5556483Z Compiling cmake v0.1.58 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:23.6150615Z Compiling digest v0.10.7 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:23.6483227Z Compiling icu_properties_data v2.2.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:23.6585794Z Compiling anyhow v1.0.102 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:23.7056207Z Compiling libsqlite3-sys v0.30.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:23.8122625Z Compiling windows-targets v0.52.6 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:23.8148983Z Compiling fs_extra v1.3.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:23.8368463Z Compiling sha2 v0.10.9 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:23.8997001Z Compiling windows-sys v0.59.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:23.9059347Z Compiling dunce v1.0.5 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:24.0103980Z Compiling icu_normalizer_data v2.2.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:24.0787995Z Compiling ident_case v1.0.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:24.0934003Z Compiling utf8_iter v1.0.4 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:24.1593524Z Compiling percent-encoding v2.3.2 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:24.1723052Z Compiling aws-lc-sys v0.41.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:24.2396770Z Compiling ring v0.17.14 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:24.2748094Z Compiling http v1.4.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:24.3737987Z Compiling thiserror v2.0.18 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:24.5135537Z Compiling aws-lc-rs v1.17.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:24.5390373Z Compiling cpufeatures v0.3.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:24.7223060Z Compiling unicode-segmentation v1.13.3 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:24.9012156Z Compiling scopeguard v1.2.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:24.9721011Z Compiling lock_api v0.4.14 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:25.0251012Z Compiling chacha20 v0.10.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:25.0357173Z Compiling form_urlencoded v1.2.2 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:25.0666067Z Compiling untrusted v0.9.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:25.1433820Z Compiling fs2 v0.4.3 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:25.3225494Z Compiling rand v0.10.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:25.3253359Z Compiling num-traits v0.2.19 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:25.3307340Z Compiling windows-strings v0.5.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:25.3350985Z Compiling windows-result v0.4.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:25.3402264Z Compiling rustls v0.23.40 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:25.3986208Z Compiling heck v0.5.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:25.4019013Z Compiling convert_case v0.10.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:25.4529941Z Compiling atomic-waker v1.1.2 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:25.4907600Z Compiling const-oid v0.10.2 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:25.6020140Z Compiling unicode-xid v0.2.6 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:25.7285710Z Compiling httparse v1.10.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:25.7649106Z Compiling parking_lot_core v0.9.12 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:25.7652505Z Compiling http-body v1.0.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:25.7889746Z Compiling hybrid-array v0.4.12 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:25.7989231Z Compiling either v1.16.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:25.8092657Z Compiling powerfmt v0.2.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:25.8754179Z Compiling base64ct v1.8.3 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:25.9210608Z Compiling memoffset v0.6.5 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:26.0263243Z Compiling synstructure v0.13.2 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:26.0975134Z Compiling darling_core v0.20.11 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:26.2323924Z Compiling deranged v0.5.8 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:26.2367691Z Compiling pem-rfc7468 v1.0.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:26.2435147Z Compiling base64 v0.22.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:26.3010032Z Compiling ref-cast v1.0.25 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:26.3326265Z Compiling tower-service v0.3.3 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:26.4373771Z Compiling thiserror v1.0.69 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:26.5573200Z Compiling tinyvec_macros v0.1.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:26.6541385Z Compiling data-encoding v2.11.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:26.6645558Z Compiling time-core v0.1.8 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:26.6842637Z Compiling num-conv v0.2.2 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:26.7108037Z Compiling try-lock v0.2.5 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:26.7514380Z Compiling tinyvec v1.11.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:26.8285117Z Compiling want v0.3.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:26.8285672Z Compiling crypto-common v0.2.2 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:26.8582461Z Compiling block-buffer v0.12.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:26.8669840Z Compiling parking_lot v0.12.5 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:27.0084390Z Compiling serde_derive_internals v0.29.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:27.0434931Z Compiling vergen-lib v9.1.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:27.0690776Z Compiling n0-future v0.3.2 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:27.0863640Z Compiling inout v0.1.4 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:27.0945806Z Compiling serial-core v0.4.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:27.0991961Z Compiling aho-corasick v1.1.4 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:27.1660708Z Compiling httpdate v1.0.3 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:27.2444073Z Compiling winnow v1.0.3 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:27.3017213Z Compiling spin v0.10.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:27.3252016Z Compiling toml_write v0.1.2 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:27.4049934Z Compiling regex-syntax v0.8.10 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:27.4517211Z Compiling winreg v0.10.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:27.4554193Z Compiling diatomic-waker v0.2.3 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:27.5462409Z Compiling crossbeam-utils v0.8.21 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:27.5482543Z Compiling winnow v0.7.15 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:27.5514089Z Compiling parking v2.2.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:27.6497155Z Compiling cordyceps v0.3.4 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:27.6588450Z Compiling futures-lite v2.6.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:27.7561870Z Compiling digest v0.11.3 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:27.9647320Z Compiling futures-buffered v0.2.13 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:27.9800682Z Compiling serial-windows v0.4.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:27.9849656Z Compiling cipher v0.4.4 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:28.0510675Z Compiling vergen v9.1.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:28.1371779Z Compiling vergen-lib v0.1.6 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:28.2412409Z Compiling universal-hash v0.5.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:28.2413114Z Compiling noq-udp v0.10.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:28.2446971Z Compiling sync_wrapper v1.0.2 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:28.3235643Z Compiling heapless v0.7.17 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:28.3475940Z Compiling curve25519-dalek v5.0.0-pre.6 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:28.3595713Z Compiling opaque-debug v0.3.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:28.3833352Z Compiling pin-utils v0.1.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:28.3932064Z Compiling byteorder v1.5.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:28.4426898Z Compiling toml_datetime v1.1.1+spec-1.1.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:28.4717813Z Compiling toml_parser v1.1.2+spec-1.1.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:28.5228986Z Compiling allocator-api2 v0.2.21 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:28.5595256Z Compiling dyn-clone v1.0.20 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:28.6363411Z Compiling bitflags v1.3.2 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:28.7009075Z Compiling lazy_static v1.5.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:28.7036003Z Compiling serde_derive v1.0.228 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:28.7287036Z Compiling zeroize_derive v1.4.3 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:28.7323706Z Compiling curve25519-dalek-derive v0.1.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:28.7482377Z Compiling zerofrom-derive v0.1.7 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:28.7784278Z Compiling yoke-derive v0.8.2 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:28.8011721Z Compiling tokio-macros v2.7.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:28.8406589Z Compiling futures-macro v0.3.32 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:28.8407228Z Compiling zerovec-derive v0.11.3 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:28.9701872Z Compiling displaydoc v0.2.6 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:28.9998295Z Compiling tracing-attributes v0.1.31 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:29.4340502Z Compiling thiserror-impl v2.0.18 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:29.5509746Z Compiling zeroize v1.8.2 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:29.5681494Z Compiling darling_macro v0.20.11 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:29.8913974Z Compiling derive_more-impl v2.1.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:30.1170092Z Compiling tokio v1.52.3 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:30.1233472Z Compiling futures-util v0.3.32 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:30.1706975Z Compiling rustls-pki-types v1.14.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:30.3238675Z Compiling darling v0.20.11 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:30.5244771Z Compiling n0-error-macros v0.1.3 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:30.5960611Z Compiling derive_builder_core v0.20.2 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:30.6228926Z Compiling spez v0.1.2 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:30.6752224Z Compiling zerofrom v0.1.8 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:30.9284317Z Compiling windows-implement v0.60.2 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:30.9952734Z Compiling yoke v0.8.3 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:31.0027677Z Compiling windows-interface v0.59.3 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:31.0673521Z Compiling der v0.8.0-rc.10 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:31.1735788Z Compiling ed25519-dalek v2.2.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:31.4488249Z Compiling spt-proto v0.12.1 (C:\actions-runner\_work\spt-core\spt-core\crates\spt-proto) test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:31.5561111Z Compiling zerovec v0.11.6 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:31.6196688Z Compiling zerotrie v0.2.4 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:31.6513769Z Compiling n0-error v0.1.3 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:32.1191907Z Compiling ref-cast-impl v1.0.25 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:32.1906218Z Compiling tinystr v0.8.3 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:32.2239959Z Compiling potential_utf v0.1.5 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:32.2351272Z Compiling derive_builder_macro v0.20.2 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:32.2351789Z Compiling thiserror-impl v1.0.69 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:32.3601628Z Compiling icu_locale_core v2.2.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:32.3961012Z Compiling icu_collections v2.2.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:32.4048752Z Compiling pin-project-internal v1.1.13 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:32.4359938Z Compiling spki v0.8.0-rc.4 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:32.4439558Z Compiling windows-core v0.62.2 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:32.7102104Z Compiling derive_builder v0.20.2 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:32.7164549Z Compiling regex-automata v0.4.14 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:32.9621912Z Compiling schemars_derive v1.2.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:33.1441900Z Compiling pkcs8 v0.11.0-rc.10 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:33.2515634Z Compiling icu_provider v2.2.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:33.3341884Z Compiling futures-executor v0.3.32 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:33.3356305Z Compiling toml_edit v0.25.12+spec-1.1.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:33.3693757Z Compiling shared_library v0.1.9 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:33.5799814Z Compiling icu_normalizer v2.2.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:33.6733227Z Compiling icu_properties v2.2.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:33.7102011Z Compiling nix v0.25.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:33.7473990Z Compiling hash32 v0.2.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:33.8143479Z Compiling ipnet v2.12.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:33.8712016Z Compiling serde_spanned v0.6.9 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:33.9358359Z Compiling toml_datetime v0.6.11 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:33.9883973Z Compiling pin-project v1.1.13 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:33.9985251Z Compiling filedescriptor v0.8.3 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:34.0539985Z Compiling polyval v0.6.2 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:34.1536540Z Compiling toml_edit v0.22.27 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:34.2321113Z Compiling prefix-trie v0.8.4 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:34.3505684Z Compiling once_cell v1.21.4 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:34.3546877Z Compiling serial v0.4.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:34.4431289Z Compiling spin v0.9.8 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:34.4938519Z Compiling vergen-gitcl v1.0.8 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:34.5591572Z Compiling tracing-core v0.1.36 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:34.6398744Z Compiling tokio-util v0.7.18 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:34.7130982Z Compiling hashbrown v0.14.5 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:34.7369973Z Compiling tempfile v3.27.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:34.7888802Z Compiling derive_more v2.1.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:34.8147964Z Compiling windows-threading v0.2.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:35.0014625Z Compiling tracing v0.1.44 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:35.0271284Z Compiling idna_adapter v1.2.2 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:35.0629425Z Compiling regex v1.12.3 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:35.1061630Z Compiling ryu v1.0.23 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:35.1225573Z Compiling schemars v1.2.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:35.1467472Z Compiling tower-layer v0.3.3 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:35.2619536Z Compiling idna v1.1.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:35.3488735Z Compiling signature v3.0.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:35.3716064Z Compiling hashlink v0.9.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:35.4525782Z Compiling h2 v0.4.14 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:35.5140245Z Compiling shell-words v1.1.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:35.5140689Z Compiling downcast-rs v1.2.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:35.5263518Z Compiling ed25519 v3.0.0-rc.4 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:35.6626129Z Compiling rusqlite v0.32.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:35.6648607Z Compiling url v2.5.8 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:35.7077191Z Compiling portable-pty v0.8.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:35.7757318Z Compiling windows-future v0.3.2 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:36.2236314Z Compiling toml v0.8.23 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:36.2795319Z Compiling hickory-proto v0.26.0-beta.4 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:36.2980402Z Compiling data-encoding-macro-internal v0.1.18 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:36.5637618Z Compiling spt-store v0.12.1 (C:\actions-runner\_work\spt-core\spt-core\crates\spt-store) test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:36.6346412Z Compiling ghash v0.5.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:36.6346985Z Compiling proc-macro-crate v3.5.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:36.8880321Z Compiling futures v0.3.32 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:37.5299953Z Compiling windows-numerics v0.3.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:37.5407624Z Compiling windows-collections v0.3.2 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:37.6435689Z Compiling cobs v0.3.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:37.6626117Z Compiling postcard-derive v0.2.2 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:37.8375600Z Compiling ctr v0.9.2 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:37.8684778Z Compiling aes v0.8.4 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:38.0075640Z Compiling sha2 v0.11.0-rc.5 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:38.0150514Z Compiling time v0.3.47 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:38.0401227Z Compiling http-body-util v0.1.3 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:38.0549596Z Compiling aead v0.5.2 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:38.2479092Z Compiling widestring v1.2.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:38.3018383Z Compiling ipconfig v0.3.4 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:38.3914521Z Compiling windows v0.62.2 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:38.4064882Z Compiling num_enum_derive v0.7.6 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:38.5939419Z Compiling spt-msg v0.12.1 (C:\actions-runner\_work\spt-core\spt-core\crates\spt-msg) test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:38.7911858Z Compiling postcard v1.1.3 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:38.8571034Z Compiling ed25519-dalek v3.0.0-pre.6 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:39.1502440Z Compiling hyper v1.10.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:39.3137825Z Compiling spt-runtime v0.12.1 (C:\actions-runner\_work\spt-core\spt-core\crates\spt-runtime) test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:39.3504495Z Compiling aes-gcm v0.10.3 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:39.3725559Z Compiling data-encoding-macro v0.1.20 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:39.3930264Z Compiling tower v0.5.3 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:39.5731323Z Compiling crossbeam-epoch v0.9.18 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:39.7734441Z Compiling crossbeam-channel v0.5.15 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:40.1979572Z Compiling chrono v0.4.45 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:40.2671727Z Compiling async-trait v0.1.89 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:40.2835166Z Compiling iroh-metrics-derive v0.4.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:40.3212898Z Compiling enum-assoc v1.3.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:40.6184437Z Compiling strum_macros v0.28.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:40.6253948Z Compiling windows-registry v0.6.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:40.6819492Z Compiling blake3 v1.8.5 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:40.8124920Z Compiling hyper-util v0.1.20 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:41.1556233Z Compiling netwatch v0.16.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:41.9268148Z Compiling noq v0.18.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:42.1558238Z Compiling uuid v1.23.2 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:42.2609246Z Compiling acto v0.8.2 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:42.2609763Z Compiling lru-slab v0.1.2 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:42.3002968Z Compiling tagptr v0.2.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:42.3855233Z Compiling mac-addr v0.3.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:42.4773862Z Compiling identity-hash v0.1.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:42.5117629Z Compiling sorted-index-buffer v0.2.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:42.5198283Z Compiling foldhash v0.2.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:42.6735043Z Compiling xml-rs v0.8.28 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:42.7101627Z Compiling rustc-hash v2.1.2 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:42.7212620Z Compiling hashbrown v0.16.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:42.7276536Z Compiling netdev v0.42.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:42.7389060Z Compiling moka v0.12.15 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:42.8725947Z Compiling iroh-metrics v0.38.3 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:42.9145642Z Compiling iroh-relay v0.98.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:43.0360822Z Compiling tower-http v0.6.11 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:43.0376730Z Compiling num_enum v0.7.6 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:43.4244741Z Compiling xmltree v0.10.3 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:43.5297712Z Compiling iroh-base v0.98.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:43.5691226Z Compiling spt-term v0.12.1 (C:\actions-runner\_work\spt-core\spt-core\crates\spt-term) test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:43.5838938Z Compiling attohttpc v0.30.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:43.6406345Z Compiling n0-watcher v0.6.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:43.6895949Z Compiling tokio-stream v0.1.18 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:43.8478948Z Compiling strum v0.28.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:43.8702225Z Compiling simple-dns v0.9.3 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:43.9338343Z Compiling sha1_smol v1.0.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:44.0130707Z Compiling simdutf8 v0.1.5 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:44.3810846Z Compiling constant_time_eq v0.4.2 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:44.4579389Z Compiling smol_str v0.1.24 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:44.5421762Z Compiling arrayref v0.3.9 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:44.5545033Z Compiling arrayvec v0.7.6 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:44.5822045Z Compiling resolv-conf v0.7.6 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:44.6506868Z Compiling igd-next v0.17.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:44.7497988Z Compiling lru v0.16.4 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:44.8300774Z Compiling iroh-dns v0.98.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:44.8362923Z Compiling webpki-roots v1.0.7 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:44.9500169Z Compiling hmac v0.12.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:45.0094804Z Compiling iroh v0.98.2 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:45.0596923Z Compiling seize v0.5.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:45.1413816Z Compiling serde_bytes v0.11.19 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:45.1485890Z Compiling cmov v0.5.4 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:45.3398199Z Compiling papaya v0.2.4 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:45.3468998Z Compiling swarm-discovery v0.6.0-alpha.2 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:45.4535033Z Compiling ctutils v0.4.2 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:45.4976695Z Compiling hkdf v0.12.4 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:45.5125408Z Compiling backon v1.6.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:45.5514624Z Compiling sha1 v0.10.6 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:45.6864105Z Compiling spake2 v0.4.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:45.6918069Z Compiling spt-live v0.12.1 (C:\actions-runner\_work\spt-core\spt-core\crates\spt-live) test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:45.7111495Z Compiling doctest-file v1.1.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:45.7491935Z Compiling recvmsg v1.0.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:45.8432484Z Compiling darling_core v0.23.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:45.8537359Z Compiling utf8parse v0.2.2 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:45.8538170Z Compiling anstyle v1.0.14 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:45.9053315Z Compiling once_cell_polyfill v1.70.2 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:46.0037636Z Compiling anstyle-parse v1.0.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:46.0382317Z Compiling anstyle-wincon v3.0.11 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:46.0830651Z Compiling anstyle-query v1.1.5 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:46.1160908Z Compiling paste v1.0.15 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:46.2057221Z Compiling is_terminal_polyfill v1.70.2 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:46.2576181Z Compiling instability v0.3.12 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:46.2576681Z Compiling interprocess v2.4.2 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:46.3102488Z Compiling foldhash v0.1.5 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:46.3103096Z Compiling colorchoice v1.0.5 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:46.3711247Z Compiling strum_macros v0.26.4 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:46.4533221Z Compiling hashbrown v0.15.5 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:46.5482405Z Compiling anstream v1.0.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:46.6225635Z Compiling itertools v0.13.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:46.6226016Z Compiling crossterm_winapi v0.9.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:46.7138855Z Compiling castaway v0.2.4 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:46.8848240Z Compiling terminal_size v0.4.4 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:47.0818789Z Compiling static_assertions v1.1.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:47.1087939Z Compiling clap_lex v1.1.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:47.1238183Z Compiling indoc v2.0.7 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:47.2228753Z Compiling unicode-width v0.1.14 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:47.2303761Z Compiling lru v0.12.5 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:47.2700005Z Compiling compact_str v0.8.2 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:47.4500156Z Compiling clap_builder v4.6.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:47.4601235Z Compiling crossterm v0.28.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:47.5478392Z Compiling clap_derive v4.6.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:47.6516647Z Compiling cassowary v0.3.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:47.7649468Z Compiling unicode-width v0.2.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:48.0911541Z Compiling error-code v3.3.2 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:48.1553337Z Compiling nucleo-matcher v0.3.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:48.1577717Z Compiling qrcode v0.14.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:48.2433817Z Compiling unicode-truncate v1.1.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:48.3350597Z Compiling wmi v0.18.4 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:48.4086441Z Compiling clipboard-win v5.4.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:48.5883001Z Compiling strum v0.26.3 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:48.9277103Z Compiling mock-adapter v0.12.1 (C:\actions-runner\_work\spt-core\spt-core\adapters\mock) test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:49.4399834Z Compiling darling_macro v0.23.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:49.7502327Z Compiling clap v4.6.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:49.9454859Z Compiling darling v0.23.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:50.2152615Z Compiling portmapper v0.16.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:21:51.4222204Z Compiling ratatui v0.29.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:04.4152303Z Compiling rustls-webpki v0.103.13 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:06.6933980Z Compiling tokio-rustls v0.26.4 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:06.6934227Z Compiling noq-proto v0.17.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:06.6934515Z Compiling rustls-platform-verifier v0.7.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:06.8344906Z Compiling hickory-net v0.26.0-beta.4 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:06.8345274Z Compiling hyper-rustls v0.27.9 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:06.8345995Z Compiling tokio-websockets v0.13.2 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:06.9880259Z Compiling reqwest v0.13.4 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:07.9155917Z Compiling hickory-resolver v0.26.0-beta.4 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:24.6113056Z Compiling spt-net v0.12.1 (C:\actions-runner\_work\spt-core\spt-core\crates\spt-net) test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:25.9924345Z Compiling spt-daemon v0.12.1 (C:\actions-runner\_work\spt-core\spt-core\crates\spt-daemon) test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:35.8429501Z Compiling spt v0.12.1 (C:\actions-runner\_work\spt-core\spt-core\crates\spt) test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:55.5564889Z Compiling xtask v0.12.1 (C:\actions-runner\_work\spt-core\spt-core\crates\xtask) test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:22.3842229Z Finished `test` profile [unoptimized + debuginfo] target(s) in 2m 09s test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:44.6228077Z ──────────── test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:44.6228673Z Nextest run ID 156a4f76-febb-404e-84b0-a06e17602571 with nextest profile: default test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:44.6229019Z Starting 1167 tests across 48 binaries (1 test and 39 binaries skipped) test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:44.6504373Z PASS [ 0.025s] ( 1/1167) mock-adapter::manifest_valid mock_has_no_claude_code_conventions test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:44.6584037Z PASS [ 0.034s] ( 2/1167) mock-adapter::manifest_valid mock_manifest_parses_and_validates test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:44.6608707Z PASS [ 0.036s] ( 3/1167) spt::notify_shell_e2e notify_shell_renders_a_commanded_toast test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:44.6678911Z PASS [ 0.043s] ( 4/1167) mock-adapter::manifest_valid mock_declares_commune_signoff_as_filedrops test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:44.6992818Z PASS [ 0.041s] ( 5/1167) spt::release_verify_e2e published_release_verifies_against_embedded_anchor test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:45.8222934Z PASS [ 1.198s] ( 6/1167) spt::live_bind_firsthost_e2e live_bind_marks_online_and_brain_reconcile_hosts test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:45.8652317Z PASS [ 1.240s] ( 7/1167) spt::contract_e2e mock_adapter_drives_the_full_contract test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:45.9038581Z PASS [ 0.039s] ( 8/1167) spt::bin/spt api::auth::tests::mints_distinct_nonempty_tokens test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:45.9306067Z PASS [ 0.023s] ( 9/1167) spt::bin/spt api::auth::tests::missing_endpoint_is_no_endpoint test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:45.9468980Z PASS [ 1.293s] ( 10/1167) spt::ready_resume_ledger_e2e ready_bind_ledgers_and_reconcile_hosts_no_psyche test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:45.9706184Z PASS [ 0.027s] ( 11/1167) spt::bin/spt api::auth::tests::session_id_proof_authenticates test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:45.9709131Z PASS [ 0.044s] ( 12/1167) spt::bin/spt api::auth::tests::no_proof_is_refused test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:46.0147499Z PASS [ 0.043s] ( 13/1167) spt::bin/spt api::auth::tests::token_proof_authenticates test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:46.0153174Z PASS [ 0.044s] ( 14/1167) spt::bin/spt api::auth::tests::wrong_token_and_wrong_session_refused test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:46.0342001Z PASS [ 0.020s] ( 15/1167) spt::bin/spt api::delivery::tests::echo_gate_explicit_toggle test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:46.0491109Z PASS [ 0.031s] ( 16/1167) spt::bin/spt api::delivery::tests::idle_busy_transitions_manage_sentinels test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:46.0708596Z PASS [ 0.037s] ( 17/1167) spt::bin/spt api::delivery::tests::idle_no_gate_does_not_arm_gate test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:46.0786468Z PASS [ 1.451s] ( 18/1167) spt::contract_e2e seed_then_listen_binds_and_relays test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:46.0794602Z PASS [ 0.030s] ( 19/1167) spt::bin/spt api::delivery::tests::inject_all_pty_falls_back_to_hook test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:46.0804342Z PASS [ 1.456s] ( 20/1167) spt::gateway_e2e gateway_binds_and_is_the_user_backed_origin test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:46.1002480Z PASS [ 0.026s] ( 21/1167) spt::bin/spt api::delivery::tests::inject_resolution_drops_pty_defaults_hook test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:46.2241777Z PASS [ 0.136s] ( 22/1167) spt::bin/spt api::reporting::tests::boundary_appends_to_the_session_ledger test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:46.2539540Z PASS [ 0.030s] ( 23/1167) spt::bin/spt api::reporting::tests::boundary_missing_perch_refused test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:46.3420114Z PASS [ 0.264s] ( 24/1167) spt::bin/spt api::delivery::tests::poll_drains_non_deferred_by_default test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:46.3799334Z PASS [ 0.305s] ( 25/1167) spt::bin/spt api::delivery::tests::poll_drain_holds_deferred_while_resting_and_releases_once_on_wake test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:46.3999417Z PASS [ 0.152s] ( 26/1167) spt::bin/spt api::reporting::tests::boundary_rebinds_keeping_anchor test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:46.4045964Z PASS [ 1.743s] ( 27/1167) spt::shell_actgate_e2e act_gate_blocks_command_until_class_scoped_grant test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:46.4160976Z PASS [ 1.791s] ( 28/1167) spt::live_firsthost_e2e live_listen_marks_online_and_brain_reconcile_hosts test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:46.4256825Z PASS [ 0.325s] ( 29/1167) spt::bin/spt api::reporting::tests::boundary_injects_deferred_shell_context test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:46.4300017Z PASS [ 0.049s] ( 30/1167) spt::bin/spt api::reporting::tests::capability_lists_hostable_types test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:46.4431700Z PASS [ 0.026s] ( 31/1167) spt::bin/spt api::reporting::tests::env_aliases_resolved_from_manifest test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:46.4613674Z PASS [ 0.036s] ( 32/1167) spt::bin/spt api::reporting::tests::filedrops_are_fixed_named_files test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:46.4615303Z PASS [ 0.058s] ( 33/1167) spt::bin/spt api::reporting::tests::digest_entry_validates_and_appends_to_digest_log test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:46.4616061Z PASS [ 0.054s] ( 34/1167) spt::bin/spt api::reporting::tests::driven_by_reads_daemon_marker test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:46.4869554Z PASS [ 0.029s] ( 35/1167) spt::bin/spt api::reporting::tests::presence_records_endpoint test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:46.4921683Z PASS [ 0.063s] ( 36/1167) spt::bin/spt api::reporting::tests::hint_once_per_session_one_per_message test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:46.4955296Z PASS [ 0.054s] ( 37/1167) spt::bin/spt api::reporting::tests::history_log_appends test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:46.4967896Z PASS [ 0.039s] ( 38/1167) spt::bin/spt api::reporting::tests::session_end_erase_refused_with_live_children test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:46.5765890Z PASS [ 0.117s] ( 39/1167) spt::bin/spt api::reporting::tests::session_end_erase_wipes_childless_perch test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:46.5766629Z PASS [ 0.084s] ( 40/1167) spt::bin/spt api::startup::tests::bind_assigns_home_and_revive_preserves_it test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:46.6024116Z PASS [ 0.026s] ( 41/1167) spt::bin/spt api::startup::tests::empty_session_seed_refused test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:46.6035562Z PASS [ 0.117s] ( 42/1167) spt::bin/spt api::reporting::tests::session_end_soft_preserves_state test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:46.6070719Z PASS [ 1.982s] ( 43/1167) spt::drive_e2e drive_channel_slot_through_the_real_socket test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:46.6459709Z PASS [ 0.040s] ( 44/1167) spt::bin/spt api::startup::tests::missing_seed_refused test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:46.6460915Z PASS [ 0.148s] ( 45/1167) spt::bin/spt api::startup::tests::bind_with_type_establishes_a_gateway_endpoint test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:46.6547447Z PASS [ 2.026s] ( 46/1167) spt::n1_compat brain_accepts_old_and_new_broker_argv test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:46.6575241Z PASS [ 0.055s] ( 47/1167) spt::bin/spt api::startup::tests::live_perch_under_other_session_conflicts test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:46.6938316Z PASS [ 0.036s] ( 48/1167) spt::bin/spt api::startup::tests::seed_fail_eof_gives_actionable_stale_broker_hint test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:46.7133522Z PASS [ 0.061s] ( 49/1167) spt::bin/spt api::startup::tests::seed_bind_records_seed_captured_cwd test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:46.7718673Z PASS [ 0.272s] ( 50/1167) spt::bin/spt api::startup::tests::bind_records_cwd_so_picker_can_group_by_project test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:46.7766011Z PASS [ 0.082s] ( 51/1167) spt::bin/spt api::startup::tests::stale_seed_with_dead_anchor_refused test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:46.7967383Z PASS [ 0.085s] ( 52/1167) spt::bin/spt api::startup::tests::valid_seed_binds_live_perch test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:46.7985974Z PASS [ 0.191s] ( 53/1167) spt::bin/spt api::startup::tests::post_spawn_bind_establishes_perch test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:46.8084679Z PASS [ 0.161s] ( 54/1167) spt::bin/spt api::startup::tests::rebind_same_session_ok test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:46.8085745Z PASS [ 0.230s] ( 55/1167) spt::bin/spt api::startup::tests::establish_stamps_controllable_by_hosting_mode test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:46.8086439Z PASS [ 0.467s] ( 56/1167) spt::bin/spt api::reporting::tests::boundary_resurfaces_undismissed_notifs test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:46.8274147Z PASS [ 0.054s] ( 57/1167) spt::bin/spt api::tests::adapter_is_optional test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:46.8285849Z PASS [ 0.052s] ( 58/1167) spt::bin/spt api::tests::ctx_manifest_override_wins_when_manifest_present test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:46.8286839Z PASS [ 0.030s] ( 59/1167) spt::bin/spt api::tests::ctx_manifest_unregistered_no_manifest_is_none_not_fatal test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:46.8345274Z PASS [ 0.026s] ( 60/1167) spt::bin/spt api::tests::state_value_is_validated test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:46.8418652Z PASS [ 0.196s] ( 61/1167) spt::bin/spt api::startup::tests::revive_without_cwd_preserves_prior_cwd test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:46.8433649Z PASS [ 0.038s] ( 62/1167) spt::bin/spt api::tests::load_manifest_resolves_composite_adapter_option test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:46.8506135Z PASS [ 0.041s] ( 63/1167) spt::bin/spt api::tests::surface_parses test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:46.8590019Z PASS [ 0.055s] ( 64/1167) spt::bin/spt api::tests::ctx_manifest_resolves_from_registry_when_manifest_absent test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:46.8648114Z PASS [ 0.037s] ( 65/1167) spt::bin/spt api::worker::tests::cascade_guard_tracks_live_children test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:46.8858286Z PASS [ 0.037s] ( 66/1167) spt::bin/spt cli::tests::access_subcommands_parse test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:46.9198023Z PASS [ 0.079s] ( 67/1167) spt::bin/spt api::worker::tests::worker_start_nests_under_parent test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:46.9264642Z PASS [ 0.097s] ( 68/1167) spt::bin/spt api::worker::tests::guard_clears_only_when_all_children_stopped test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:46.9270884Z PASS [ 0.069s] ( 69/1167) spt::bin/spt cli::tests::adapter_profile_verbs_local_only test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:46.9512535Z PASS [ 0.024s] ( 70/1167) spt::bin/spt cli::tests::applied_message_renders_semver_or_counter_fallback_and_states_applied test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:46.9513746Z PASS [ 0.031s] ( 71/1167) spt::bin/spt cli::tests::adapter_subcommands_parse test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:46.9823548Z PASS [ 0.101s] ( 72/1167) spt::bin/spt cli::tests::adapter_string_verbs test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:46.9901235Z PASS [ 0.039s] ( 73/1167) spt::bin/spt cli::tests::bare_spt_parses_to_none test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:46.9916030Z PASS [ 0.066s] ( 74/1167) spt::bin/spt cli::tests::adapter_use_sets_and_clears_pointer test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.0098781Z PASS [ 0.027s] ( 75/1167) spt::bin/spt cli::tests::bare_tty_guard test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.0141018Z PASS [ 0.177s] ( 76/1167) spt::bin/spt api::worker::tests::worker_poll_holds_deferred_while_resting test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.0158383Z PASS [ 0.020s] ( 77/1167) spt::bin/spt cli::tests::connection_lines_net_less_hides_stale_heartbeat test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.0184788Z PASS [ 0.020s] ( 78/1167) spt::bin/spt cli::tests::create_existing_name_is_usage_error test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.0261079Z PASS [ 0.074s] ( 79/1167) spt::bin/spt cli::tests::apply_user_msg_gate_local_origination test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.0422874Z PASS [ 0.213s] ( 80/1167) spt::bin/spt api::worker::tests::worker_poll_drains_spool test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.0474551Z PASS [ 0.037s] ( 81/1167) spt::bin/spt cli::tests::create_not_elevated_refuses_without_saving test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.0515238Z PASS [ 0.025s] ( 82/1167) spt::bin/spt cli::tests::daemon_offline_hint_only_when_down test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.0557596Z PASS [ 0.042s] ( 83/1167) spt::bin/spt cli::tests::create_new_existing_name_is_usage_error test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.0813910Z PASS [ 0.068s] ( 84/1167) spt::bin/spt cli::tests::create_new_mints_shows_and_requests_save test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.0830088Z PASS [ 0.067s] ( 85/1167) spt::bin/spt cli::tests::create_prints_joining_material_when_elevated test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.0830726Z PASS [ 0.031s] ( 86/1167) spt::bin/spt cli::tests::empty_store_no_flag_guides_to_pair_or_create test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.0831273Z PASS [ 0.041s] ( 87/1167) spt::bin/spt cli::tests::daemon_subcommands_parse test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.0831739Z PASS [ 0.035s] ( 88/1167) spt::bin/spt cli::tests::digest_flag_defaults test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.0856796Z PASS [ 0.034s] ( 89/1167) spt::bin/spt cli::tests::endpoint_list_subnet_rows_align_and_label test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.1157961Z PASS [ 2.490s] ( 90/1167) spt::live_resolve_e2e listen_without_adapter_resolves_from_host_binaries test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.1171500Z PASS [ 0.039s] ( 91/1167) spt::bin/spt cli::tests::endpoint_role_parses test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.1328551Z PASS [ 0.278s] ( 92/1167) spt::bin/spt cli::tests::adapter_digest_proof_fills_session_id_key test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.1415658Z PASS [ 0.045s] ( 93/1167) spt::bin/spt cli::tests::escalation_choice_parses_fail_closed test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.1502586Z PASS [ 0.068s] ( 94/1167) spt::bin/spt cli::tests::endpoint_subcommands_parse test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.1610192Z PASS [ 0.308s] ( 95/1167) spt::bin/spt cli::tests::adapter_digest_proof_gates_on_drops test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.1778170Z PASS [ 0.063s] ( 96/1167) spt::bin/spt cli::tests::gh_release_version_compare_decision test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.1901056Z PASS [ 0.071s] ( 97/1167) spt::bin/spt cli::tests::grant_subcommands_parse test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.2241875Z PASS [ 0.142s] ( 98/1167) spt::bin/spt cli::tests::endpoint_stop_marks_offline test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.2519068Z PASS [ 2.627s] ( 99/1167) spt::poll_envelope_e2e api_poll_emits_whole_self_delimiting_events test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.4032399Z PASS [ 0.253s] ( 100/1167) spt::bin/spt cli::tests::how_to_topics_cover_ready_and_send test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.4074146Z PASS [ 0.230s] ( 101/1167) spt::bin/spt cli::tests::join_gate_refuses_without_confirmed_elevation test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.4074914Z PASS [ 0.280s] ( 102/1167) spt::bin/spt cli::tests::help_groups_cover_every_command test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.4097165Z PASS [ 0.281s] ( 103/1167) spt::bin/spt cli::tests::hot_path_flat_and_moved_verbs_gone test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.4097805Z PASS [ 2.785s] ( 104/1167) spt::contract_e2e cold_api_call_autostarts_daemon_and_handoff_is_in_memory test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.4098486Z PASS [ 0.249s] ( 105/1167) spt::bin/spt cli::tests::invalid_usage_errors test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.4137755Z PASS [ 0.225s] ( 106/1167) spt::bin/spt cli::tests::local_section_always_renders_local_perches test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.4183508Z PASS [ 0.166s] ( 107/1167) spt::bin/spt cli::tests::node_level_label_names_an_endpointless_peer test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.4233243Z PASS [ 0.018s] ( 108/1167) spt::bin/spt cli::tests::node_rows_disambiguate_only_on_label_collision test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.4234316Z PASS [ 0.016s] ( 109/1167) spt::bin/spt cli::tests::node_status_rows_settle_cheap_signals_probe_only_stale test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.4293308Z PASS [ 0.204s] ( 110/1167) spt::bin/spt cli::tests::multi_subnet_refuses_without_flag_then_resolves_with_it test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.4305332Z PASS [ 0.023s] ( 111/1167) spt::bin/spt cli::tests::not_elevated_refuses_without_leaking_code_or_saving test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.4364399Z PASS [ 0.027s] ( 112/1167) spt::bin/spt cli::tests::notify_subnet_resolution_home_default test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.4512789Z PASS [ 0.035s] ( 113/1167) spt::bin/spt cli::tests::origin_set_and_asset_urls_latest_and_tag test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.4513422Z PASS [ 0.038s] ( 114/1167) spt::bin/spt cli::tests::notify_surface_parses test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.4631686Z PASS [ 0.041s] ( 115/1167) spt::bin/spt cli::tests::pair_namespace_is_gone test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.4664134Z PASS [ 0.044s] ( 116/1167) spt::bin/spt cli::tests::poll_online_fastpath_timeout_and_later_success test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.4820985Z PASS [ 0.045s] ( 117/1167) spt::bin/spt cli::tests::prune_candidates_resolve_never_guess test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.4979797Z PASS [ 0.029s] ( 118/1167) spt::bin/spt cli::tests::ring_timeout_defaults test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.5038643Z PASS [ 0.059s] ( 119/1167) spt::bin/spt cli::tests::purge_offline_gate_and_self_guard test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.5149378Z PASS [ 0.021s] ( 120/1167) spt::bin/spt cli::tests::self_pin_annotates_psyche_host_failure test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.5181594Z PASS [ 0.014s] ( 121/1167) spt::bin/spt cli::tests::self_pin_includes_description_when_present test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.5441147Z PASS [ 0.029s] ( 122/1167) spt::bin/spt cli::tests::send_target_optional_with_reply_to test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.5500253Z PASS [ 0.032s] ( 123/1167) spt::bin/spt cli::tests::send_user_msg_flag_parses test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.5599989Z PASS [ 0.079s] ( 124/1167) spt::bin/spt cli::tests::run_bounded_yields_value_or_timeout_default test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.6046941Z PASS [ 0.141s] ( 125/1167) spt::bin/spt cli::tests::release_archive_extracts_to_a_registrable_root test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.6433256Z PASS [ 0.213s] ( 126/1167) spt::bin/spt cli::tests::probe_all_timeout_settles_false_without_stalling_batch test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.6438347Z PASS [ 0.083s] ( 127/1167) spt::bin/spt cli::tests::shell_relink_relaunches_offline_instances_only test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.6462567Z PASS [ 0.096s] ( 128/1167) spt::bin/spt cli::tests::shell_owner_exclusivity_negatives test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.6792907Z PASS [ 3.011s] ( 129/1167) spt::shell_e2e mock_shell_binary_drives_the_full_link test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.6793573Z PASS [ 0.250s] ( 130/1167) spt::bin/spt cli::tests::probe_all_runs_concurrently_in_input_order test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.7425875Z PASS [ 0.063s] ( 131/1167) spt::bin/spt cli::tests::show_code_prints_reprovisioning_material test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.7426714Z PASS [ 0.064s] ( 132/1167) spt::bin/spt cli::tests::shell_subcommands_parse test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.7434851Z PASS [ 0.097s] ( 133/1167) spt::bin/spt cli::tests::shell_spawn_profiled_option_resolves_and_shares_cap test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.8053392Z PASS [ 0.062s] ( 134/1167) spt::bin/spt cli::tests::single_subnet_auto_selects_and_code_matches_seed test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.8064127Z PASS [ 0.063s] ( 135/1167) spt::bin/spt cli::tests::shutdown_soft_stops_and_suspends test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.8289652Z PASS [ 0.024s] ( 136/1167) spt::bin/spt cli::tests::subcommands_parse test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.8472366Z PASS [ 0.018s] ( 137/1167) spt::bin/spt cli::tests::subnet_status_renders_rows_and_hints_never_secrets test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.8473116Z PASS [ 0.041s] ( 138/1167) spt::bin/spt cli::tests::subnet_arg_shapes_parse test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.8620428Z PASS [ 0.015s] ( 139/1167) spt::bin/spt cli::tests::trust_mutation_gate_refuses_without_confirmed_elevation test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.8649219Z PASS [ 0.018s] ( 140/1167) spt::bin/spt cli::tests::subnets_joined_banner_renders_rows_and_divider test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.8800414Z PASS [ 0.018s] ( 141/1167) spt::bin/spt cli::tests::unknown_elevation_falls_back test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.8925502Z PASS [ 0.026s] ( 142/1167) spt::bin/spt cli::tests::unknown_named_subnet_is_usage_error test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.9025110Z PASS [ 0.022s] ( 143/1167) spt::bin/spt cli::tests::whoami_is_an_endpoint_list_alias test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.9120255Z PASS [ 0.021s] ( 144/1167) spt::bin/spt elevation::tests::already_elevated_short_circuits_on_every_os test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.9184052Z PASS [ 0.016s] ( 145/1167) spt::bin/spt elevation::tests::current_returns_a_determinate_level_on_supported_platforms test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.9333774Z PASS [ 0.021s] ( 146/1167) spt::bin/spt elevation::tests::fallback_message_names_authenticator_app_and_subnet test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.9434174Z PASS [ 0.026s] ( 147/1167) spt::bin/spt elevation::tests::gate_shows_only_when_confirmed_elevated test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.9521062Z PASS [ 0.018s] ( 148/1167) spt::bin/spt elevation::tests::launcher_argv_is_absolute_exe_plus_verbatim_args test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.9583475Z PASS [ 0.015s] ( 149/1167) spt::bin/spt elevation::tests::launchers_never_shell_interpolate_a_crafted_arg test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.9875224Z PASS [ 0.032s] ( 150/1167) spt::bin/spt elevation::tests::print_hint_floor_uses_absolute_path_each_os test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:47.9885956Z PASS [ 0.030s] ( 151/1167) spt::bin/spt elevation::tests::unix_path_order_tty_then_pkexec_then_terminal_then_hint test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:48.0096864Z PASS [ 0.585s] ( 152/1167) spt::bin/spt cli::tests::probe_all_cap_batches_into_windows test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:48.0135754Z PASS [ 0.412s] ( 153/1167) spt::bin/spt cli::tests::shell_spawn_approval_floor_gates test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:48.0139891Z PASS [ 0.269s] ( 154/1167) spt::bin/spt cli::tests::spt_hosted_no_relay_detection test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:48.0182382Z PASS [ 0.034s] ( 155/1167) spt::bin/spt elevation::tests::windows_uac_only_interactive_other_always_prints test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:48.0198122Z PASS [ 0.030s] ( 156/1167) spt::bin/spt helpfmt::tests::atx_header_at_line_start_strips_and_bolds test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:48.0398407Z PASS [ 0.030s] ( 157/1167) spt::bin/spt helpfmt::tests::bold_styles_with_color_and_strips_without test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:48.0419877Z PASS [ 0.030s] ( 158/1167) spt::bin/spt helpfmt::tests::code_styles_with_color_and_strips_without test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:48.0459331Z PASS [ 0.498s] ( 159/1167) spt::bin/spt cli::tests::shell_channels_relay_sensory_and_text_file test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:48.0461856Z PASS [ 0.032s] ( 160/1167) spt::bin/spt helpfmt::tests::color_enabled_truth_table test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:48.0472032Z PASS [ 0.029s] ( 161/1167) spt::bin/spt helpfmt::tests::dual_contract_token_survives_strip_mode test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:48.0476061Z PASS [ 0.029s] ( 162/1167) spt::bin/spt helpfmt::tests::dual_contract_token_unstyled_while_prose_styles_on_color test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:48.0586379Z PASS [ 0.021s] ( 163/1167) spt::bin/spt helpfmt::tests::empty_and_unmatched_markers_stay_literal test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:48.0765663Z PASS [ 0.029s] ( 164/1167) spt::bin/spt helpfmt::tests::link_becomes_its_text test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:48.0770356Z PASS [ 0.033s] ( 165/1167) spt::bin/spt helpfmt::tests::marker_never_spans_a_hard_break test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:48.0775876Z PASS [ 0.030s] ( 166/1167) spt::bin/spt helpfmt::tests::marker_spans_a_clap_soft_wrap test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:48.0782508Z PASS [ 0.028s] ( 167/1167) spt::bin/spt helpfmt::tests::nested_code_inside_bold_styles_both test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:48.0794640Z PASS [ 0.033s] ( 168/1167) spt::bin/spt helpfmt::tests::multibyte_text_survives test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:48.0946137Z PASS [ 0.021s] ( 169/1167) spt::bin/spt helpfmt::tests::preexisting_ansi_is_passed_through_untouched test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:48.0946877Z PASS [ 0.034s] ( 170/1167) spt::bin/spt helpfmt::tests::plain_text_is_unchanged test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:49.1831015Z PASS [ 1.107s] ( 171/1167) spt::bin/spt picker::data::tests::origin_project_unions_into_membership test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:49.2033008Z PASS [ 1.119s] ( 172/1167) spt::bin/spt picker::model::tests::adapter_tree_nests_profiles test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:49.2066067Z PASS [ 1.122s] ( 173/1167) spt::bin/spt picker::data::tests::reconcile_overrides_subnet_with_local_roster test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:49.2185153Z PASS [ 1.142s] ( 174/1167) spt::bin/spt picker::data::tests::driven_by_display_renders_name_not_hex test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:51.8465641Z PASS [ 2.664s] ( 175/1167) spt::bin/spt picker::model::tests::confirm_options_status_dependent test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:51.8466822Z PASS [ 3.753s] ( 176/1167) spt::bin/spt picker::model::tests::back_unwinds test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:51.8498315Z PASS [ 3.756s] ( 177/1167) spt::bin/spt picker::model::tests::category_ring_wraps test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:51.8563195Z PASS [ 2.658s] ( 178/1167) spt::bin/spt picker::model::tests::confirm_terminal_routes test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:51.8564102Z PASS [ 2.658s] ( 179/1167) spt::bin/spt picker::model::tests::create_outcome_bakes_run test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:51.8635401Z PASS [ 7.164s] ( 180/1167) spt::shell_sleepwake_e2e sleep_wake_cycle_drives_from_both_ends test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:51.8689568Z PASS [ 2.651s] ( 181/1167) spt::bin/spt picker::model::tests::cursor_clamps test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:51.8888202Z PASS [ 0.035s] ( 182/1167) spt::bin/spt picker::model::tests::display_status_four_state_type_gated test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:51.8924563Z PASS [ 0.037s] ( 183/1167) spt::bin/spt picker::model::tests::kind_routes test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:51.8942938Z PASS [ 4.243s] ( 184/1167) spt::bin/spt cli::tests::shell_spawn_cap_and_over_cap_gates test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:51.8977673Z PASS [ 0.051s] ( 185/1167) spt::bin/spt picker::model::tests::filter_narrows test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:51.9036794Z PASS [ 0.044s] ( 186/1167) spt::bin/spt picker::model::tests::reenter_create_keeps_or_clears_id test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:51.9111225Z PASS [ 0.054s] ( 187/1167) spt::bin/spt picker::model::tests::prefill_jumps_to_create test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:51.9235087Z PASS [ 0.036s] ( 188/1167) spt::bin/spt picker::model::tests::visible_partitions_and_sorts test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:51.9236432Z PASS [ 0.041s] ( 189/1167) spt::bin/spt picker::model::tests::status_square_is_online_offline_only test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:51.9238625Z PASS [ 0.054s] ( 190/1167) spt::bin/spt picker::model::tests::resume_title_render test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:51.9240097Z PASS [ 0.060s] ( 191/1167) spt::bin/spt picker::model::tests::resume_outcome_bakes_session test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:51.9339433Z PASS [ 0.046s] ( 192/1167) spt::bin/spt picker::shortcut::tests::bakes_create_attach_by_default test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:51.9386339Z PASS [ 0.037s] ( 193/1167) spt::bin/spt picker::shortcut::tests::bakes_resume_and_action test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:51.9390991Z PASS [ 0.034s] ( 194/1167) spt::bin/spt picker::shortcut::tests::basename_is_parameterized test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:51.9439639Z PASS [ 0.026s] ( 195/1167) spt::bin/spt picker::shortcut::tests::sentinel_detection test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:51.9614769Z PASS [ 0.039s] ( 196/1167) spt::bin/spt picker::view::tests::confirm_buffer_options test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:51.9679556Z PASS [ 0.045s] ( 197/1167) spt::bin/spt picker::view::tests::adapter_tree_buffer test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:51.9700752Z PASS [ 0.045s] ( 198/1167) spt::bin/spt picker::view::tests::kind_buffer test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:51.9812133Z PASS [ 0.043s] ( 199/1167) spt::bin/spt picker::view::tests::pick_empty_category_hint test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:51.9815673Z PASS [ 0.047s] ( 200/1167) spt::bin/spt picker::view::tests::pick_buffer_has_squares_and_description test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:51.9890063Z PASS [ 0.052s] ( 201/1167) spt::bin/spt picker::view::tests::resume_buffer_lists_sessions test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:51.9919572Z PASS [ 0.055s] ( 202/1167) spt::bin/spt picker::view::tests::pick_status_line_four_state test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:51.9933710Z PASS [ 0.067s] ( 203/1167) spt::bin/spt picker::shortcut::tests::write_create_update_refuse test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:51.9934660Z PASS [ 0.024s] ( 204/1167) spt::bin/spt rc::tests::bracketed_paste_framing_is_exact_and_content_verbatim test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:51.9983548Z PASS [ 0.018s] ( 205/1167) spt::bin/spt rc::tests::clipboard_paste_wraps_nonempty_and_noops_on_empty_or_failure test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:51.9998765Z PASS [ 0.031s] ( 206/1167) spt::bin/spt rc::tests::classify_read_err_eof_is_graceful_not_fatal test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:52.6835578Z PASS [ 0.696s] ( 207/1167) spt::bin/spt rc::tests::detach_keybind_semantics test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:52.6836355Z PASS [ 0.687s] ( 208/1167) spt::bin/spt rc::tests::detach_prefix_spans_chunks test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:52.6837192Z PASS [ 0.717s] ( 209/1167) spt::bin/spt rc::tests::attach_offline_endpoint_short_circuits_clean test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:52.6837767Z PASS [ 0.693s] ( 210/1167) spt::bin/spt rc::tests::first_event_stall_decision test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:52.6838230Z PASS [ 0.692s] ( 211/1167) spt::bin/spt rc::tests::key_event_step_detach_sm test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:52.7154331Z PASS [ 0.715s] ( 212/1167) spt::bin/spt rc::tests::mouse_is_paste_only_right_button_down test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:52.7170238Z PASS [ 0.037s] ( 213/1167) spt::bin/spt rc::tests::op_minter_distinct_and_monotonic test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:52.7171737Z PASS [ 0.715s] ( 214/1167) spt::bin/spt rc::tests::mouse_mode_decset_scan_tracks_enable_and_sgr test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:52.7191491Z PASS [ 0.718s] ( 215/1167) spt::bin/spt rc::tests::mouse_mode_decset_scan_survives_split_across_chunks test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:52.7192515Z PASS [ 0.036s] ( 216/1167) spt::bin/spt rc::tests::scroll_sgr_emits_exact_xterm_bytes test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:52.7197252Z PASS [ 0.036s] ( 217/1167) spt::bin/spt rc::tests::scroll_dir_classifies_wheel_only test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:52.7245264Z PASS [ 0.042s] ( 218/1167) spt::bin/spt rc::tests::translate_key_event_emits_exact_xterm_vt test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:52.8056920Z PASS [ 0.123s] ( 219/1167) spt::bin/spt wansend::tests::load_snapshots_degrades_on_junk test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:53.0358245Z PASS [ 0.329s] ( 220/1167) spt::bin/spt wansend::tests::refusals_render_copy_paste_targets test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:53.0568548Z PASS [ 5.978s] ( 221/1167) spt::bin/spt cli::tests::endpoint_role_overwrite_is_the_sole_writer test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:53.0669184Z PASS [ 0.261s] ( 222/1167) spt-daemon adapter_update::tests::delegated_unattested_is_skipped test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:53.0683073Z PASS [ 0.344s] ( 223/1167) spt-daemon adapter_update::tests::delegated_attested_delegates_command test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:53.0795673Z PASS [ 0.364s] ( 224/1167) spt-daemon access::tests::reply_passes_where_unsolicited_refused test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:53.0845629Z PASS [ 0.366s] ( 225/1167) spt-daemon access::tests::same_node_always_passes_without_minting test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:53.0848155Z PASS [ 0.049s] ( 226/1167) spt-daemon adapter_update::tests::file_pull_tampered_bytes_rejected test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:53.0857511Z PASS [ 0.019s] ( 227/1167) spt-daemon adapter_update::tests::file_pull_without_payload_is_skipped test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:53.0898777Z PASS [ 0.375s] ( 228/1167) spt-daemon access::tests::gate_decision_table test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:53.0945169Z PASS [ 0.036s] ( 229/1167) spt-daemon adapter_update::tests::file_pull_verified_against_adapter_key test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:53.0961122Z PASS [ 0.017s] ( 230/1167) spt-daemon adapter_update::tests::gh_release_is_managed_cli_side_not_in_pure_plan test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:53.1069664Z PASS [ 0.038s] ( 231/1167) spt-daemon adapter_update::tests::file_pull_wrong_key_rejected test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:53.1189836Z PASS [ 0.034s] ( 232/1167) spt-daemon adapter_update::tests::ripple_conducts_each_adapter_in_order test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:53.1556587Z PASS [ 0.071s] ( 233/1167) spt-daemon adapter_update::tests::ripple_registered_uses_the_registered_set test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:53.2064427Z PASS [ 0.097s] ( 234/1167) spt-daemon applyhost::tests::apply_staged_update_set_refuses_broker_touching_payloads test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:53.2065343Z PASS [ 0.112s] ( 235/1167) spt-daemon applyhost::tests::apply_staged_refuses_platform_blind_or_mismatched_single test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:53.2066546Z PASS [ 0.115s] ( 236/1167) spt-daemon applyhost::tests::apply_staged_refuses_a_quarantined_version test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:53.2130425Z PASS [ 0.117s] ( 237/1167) spt-daemon applyhost::tests::apply_staged_swaps_binary_and_hands_off_without_touching_the_endpoint test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:53.2248145Z PASS [ 0.137s] ( 238/1167) spt-daemon applyhost::tests::apply_staged_gates_fail_closed_with_the_seat_untouched test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:53.2311663Z PASS [ 0.111s] ( 239/1167) spt-daemon applyhost::tests::apply_staged_update_set_selects_local_platform_artifact test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:53.2387349Z PASS [ 0.031s] ( 240/1167) spt-daemon brainproc::tests::backoff_doubles_on_fast_death_resets_when_healthy test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:53.2396830Z PASS [ 8.614s] ( 241/1167) spt::quickstart_e2e published_messaging_quickstart_runs_as_written test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:53.2405600Z PASS [ 0.036s] ( 242/1167) spt-daemon brainproc::tests::appended_padding_flips_exe_hash test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:53.2418071Z PASS [ 0.086s] ( 243/1167) spt-daemon applyhost::tests::apply_staged_without_broker_hosted_sessions_swaps_binary test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:53.2432722Z PASS [ 0.030s] ( 244/1167) spt-daemon brainproc::tests::brain_child_args_carry_generation_and_reason test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:53.2434804Z PASS [ 0.020s] ( 245/1167) spt-daemon brainproc::tests::bytes_gate_truth_table test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:53.2450704Z PASS [ 0.041s] ( 246/1167) spt-daemon applyhost::tests::brain_restart_verb_raises_the_supervisor_signal test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:53.2512793Z PASS [ 0.014s] ( 247/1167) spt-daemon brainproc::tests::consumer_gate_spawns_once_when_net_enabled test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:53.2625515Z PASS [ 0.020s] ( 248/1167) spt-daemon brainproc::tests::ready_exe_hash_parses_and_is_n1_readable test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:53.2665350Z PASS [ 0.029s] ( 249/1167) spt-daemon brainproc::tests::planned_restart_respawns_with_update_reason test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:53.2709150Z PASS [ 0.027s] ( 250/1167) spt-daemon brainproc::tests::ready_generation_parses_stamp_and_fails_safe test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:53.2746433Z PASS [ 0.033s] ( 251/1167) spt-daemon brainproc::tests::ready_but_wrong_bytes_rolls_back_never_promotes test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:53.2747210Z PASS [ 0.031s] ( 252/1167) spt-daemon brainproc::tests::ready_generation_at_reads_file_and_absent_is_none test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:53.2791783Z PASS [ 0.028s] ( 253/1167) spt-daemon brainproc::tests::rollback_running_version_is_prior_not_n_minus_one test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:53.2836825Z PASS [ 7.460s] ( 254/1167) spt::tunnel_e2e shell_tunnel_round_trips_opaque_bytes_through_the_real_surfaces test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:53.2849785Z PASS [ 0.018s] ( 255/1167) spt-daemon brainproc::tests::select_brain_exe_prefers_canonical_over_per_spawn_current_exe test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:53.2936084Z PASS [ 0.019s] ( 256/1167) spt-daemon brainproc::tests::start_reason_arg_round_trips_and_is_lenient test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:53.2997508Z PASS [ 0.038s] ( 257/1167) spt-daemon brainproc::tests::rolled_back_record_spawns_rollback_binary_on_a_fresh_supervisor test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:53.3185895Z PASS [ 0.018s] ( 258/1167) spt-daemon broker::tests::advance_delivered_is_monotonic test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:53.3325255Z PASS [ 0.014s] ( 259/1167) spt-daemon broker::tests::apply_once_enqueues_ptywrite_exactly_once_and_dedups_replay test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:53.3554060Z PASS [ 0.641s] ( 260/1167) spt::bin/spt wansend::tests::wan_send_ships_to_the_resolved_node test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:53.3658668Z PASS [ 0.010s] ( 261/1167) spt-daemon broker::tests::delivered_cursor_advances_only_on_ok_and_is_monotonic test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:53.3760081Z PASS [ 0.010s] ( 262/1167) spt-daemon broker::tests::input_enqueue_drops_and_stamps_on_full_then_heals_on_drain test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:53.3855237Z PASS [ 0.009s] ( 263/1167) spt-daemon broker::tests::input_writer_preserves_strict_fifo_order_through_the_sole_writer test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:53.3954376Z PASS [ 0.010s] ( 264/1167) spt-daemon broker::tests::sessions_reply_resume_seq_defaults_when_absent test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:53.4063583Z PASS [ 0.011s] ( 265/1167) spt-daemon broker::tests::superseded_controller_writer_is_epoch_gated_silent_one_live_writer_per_conn test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:53.4157548Z PASS [ 0.009s] ( 266/1167) spt-daemon broker::tests::viewer_overflow_or_disconnect_evicts_never_blocks test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:53.4253235Z PASS [ 0.010s] ( 267/1167) spt-daemon codec::tests::back_to_back_frames_decode_independently test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:53.4360155Z PASS [ 0.011s] ( 268/1167) spt-daemon codec::tests::frame_round_trips_through_buffer test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:53.4451427Z PASS [ 0.009s] ( 269/1167) spt-daemon codec::tests::oversized_prefix_rejected test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:53.4634867Z PASS [ 0.018s] ( 270/1167) spt-daemon config::tests::auto_suspend_knob_is_opt_in_default_off test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:53.4853748Z PASS [ 0.022s] ( 271/1167) spt-daemon config::tests::crash_grace_is_config_driven test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:53.4954679Z PASS [ 0.250s] ( 272/1167) spt-daemon brainproc::tests::ready_with_matching_bytes_promotes test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:53.6676007Z LEAK [ 0.438s] ( 273/1167) spt-daemon brainproc::tests::clear_before_spawn_defeats_exact_generation_stale_file test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:53.7502637Z PASS [ 0.264s] ( 274/1167) spt-daemon config::tests::detached_subnets_knob_defaults_empty test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.0100164Z PASS [ 1.725s] ( 275/1167) spt-daemon brainproc::tests::trial_promotes_on_ready_then_supervises_the_accepted_binary test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.0188230Z PASS [ 1.522s] ( 276/1167) spt-daemon config::tests::full_auto_update_is_gated_by_default test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.0282613Z PASS [ 1.757s] ( 277/1167) spt-daemon brainproc::tests::stale_generation_minus_one_ready_never_promotes test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.0333726Z PASS [ 1.366s] ( 278/1167) spt-daemon config::tests::malformed_file_degrades_to_default test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.0336182Z PASS [ 1.284s] ( 279/1167) spt-daemon config::tests::missing_file_is_default test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.0468853Z PASS [ 0.035s] ( 280/1167) spt-daemon config::tests::pulse_period_is_config_driven test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.0542738Z PASS [ 0.027s] ( 281/1167) spt-daemon config::tests::save_load_roundtrip test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.0557259Z PASS [ 0.022s] ( 282/1167) spt-daemon consent::tests::decide_honors_full_auto_flag test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.3127835Z PASS [ 0.293s] ( 283/1167) spt-daemon config::tests::relay_choice_is_config_driven test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.3132761Z PASS [ 2.032s] ( 284/1167) spt-daemon brainproc::tests::supervisor_respawns_brain_until_stopped test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.3148703Z PASS [ 2.039s] ( 285/1167) spt-daemon brainproc::tests::supervisor_owns_generation_and_stamps_start_reason test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.3223668Z PASS [ 0.286s] ( 286/1167) spt-daemon consent::tests::no_live_session_resolves_to_none test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.3363104Z PASS [ 0.024s] ( 287/1167) spt-daemon daemon::tests::drive_ladder_all_err_returns_last_err test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.3437537Z PASS [ 0.029s] ( 288/1167) spt-daemon daemon::tests::drive_ladder_picks_first_ok_rung test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.3438226Z PASS [ 0.032s] ( 289/1167) spt-daemon daemon::tests::drive_ladder_falls_through_to_next_rung_on_err test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.3631002Z PASS [ 0.028s] ( 290/1167) spt-daemon daemon::tests::launch_ladder_order_is_wmi_schtasks_breakaway_injob test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.3689662Z PASS [ 0.048s] ( 291/1167) spt-daemon daemon::tests::is_running_tracks_the_seed_channel test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.3733207Z PASS [ 0.030s] ( 292/1167) spt-daemon daemon::tests::net_retry_backoff_doubles_then_caps test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.3812482Z PASS [ 0.037s] ( 293/1167) spt-daemon daemon::tests::windows_arg_quoting_roundtrips_the_rules test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.3819312Z PASS [ 0.336s] ( 294/1167) spt-daemon consent::tests::resolves_most_recently_active_live_session test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.3929125Z PASS [ 0.030s] ( 295/1167) spt-daemon daemon::tests::wmi_create_script_carries_the_no_window_startup_spec test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.3941404Z PASS [ 0.027s] ( 296/1167) spt-daemon deadline::tests::advance_after_fire_steps_one_grid_normally_and_collapses_a_stall test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.4093226Z PASS [ 0.016s] ( 297/1167) spt-daemon deadline::tests::next_fire_between_grid_points_rounds_up test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.4094290Z PASS [ 0.029s] ( 298/1167) spt-daemon deadline::tests::corrupt_file_degrades_to_fresh test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.4102823Z PASS [ 0.037s] ( 299/1167) spt-daemon deadline::tests::cold_and_crash_write_fresh_anchor_at_now test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.4111920Z PASS [ 0.030s] ( 300/1167) spt-daemon deadline::tests::distinct_keys_do_not_cross_clobber test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.4114800Z PASS [ 0.017s] ( 301/1167) spt-daemon deadline::tests::next_fire_long_jump_collapses_missed_ticks_to_one test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.4267422Z PASS [ 0.018s] ( 302/1167) spt-daemon deadline::tests::next_fire_saturates_when_now_precedes_anchor test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.4307834Z PASS [ 0.020s] ( 303/1167) spt-daemon deadline::tests::next_fire_on_grid_returns_now_and_advances_strictly test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.4361094Z PASS [ 0.022s] ( 304/1167) spt-daemon deadline::tests::one_shot_fires_at_or_after_target_and_never_resets test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.4373339Z PASS [ 2.720s] ( 305/1167) spt::bin/spt wansend::tests::remote_rest_suspends_and_wakes_with_the_deferred_gate test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.4501356Z PASS [ 0.036s] ( 306/1167) spt-daemon deadline::tests::update_with_no_file_falls_back_fresh test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.4504700Z PASS [ 0.022s] ( 307/1167) spt-daemon deadline::tests::zero_interval_degrades_to_config_default test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.4552129Z PASS [ 0.026s] ( 308/1167) spt-daemon deelevate::tests::env_overlay_keeps_explicit_spt_home_alive test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.4559668Z PASS [ 0.023s] ( 309/1167) spt-daemon deelevate::tests::plan_spawn_deelevates_only_with_a_target test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.4561588Z PASS [ 0.023s] ( 310/1167) spt-daemon digest::tests::common_prefix_len_finds_the_unchanged_head test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.4564554Z PASS [ 0.045s] ( 311/1167) spt-daemon deadline::tests::update_keeps_anchor_and_refreshes_interval test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.4823881Z PASS [ 0.026s] ( 312/1167) spt-daemon digest::tests::merge_by_ts_interleaves_context test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.4923130Z PASS [ 0.033s] ( 313/1167) spt-daemon digest::tests::projects_empty_for_a_sourceless_endpoint test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.4923806Z PASS [ 0.035s] ( 314/1167) spt-daemon digest::tests::resolve_config_precedence test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.4931003Z PASS [ 0.043s] ( 315/1167) spt-daemon digest::tests::log_less_two_origin_merge_interleaves_by_ts test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.4996095Z PASS [ 0.018s] ( 316/1167) spt-daemon digesthub::tests::dropped_subscriber_is_pruned test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.5026386Z PASS [ 0.046s] ( 317/1167) spt-daemon digest::tests::projects_a_log_less_endpoint_from_digest_log test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.5089474Z PASS [ 0.019s] ( 318/1167) spt-daemon digesthub::tests::project_and_publish_stores_latest test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.5125332Z PASS [ 0.021s] ( 319/1167) spt-daemon digesthub::tests::publish_delta_is_tail_then_full_refresh test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.5141838Z PASS [ 0.021s] ( 320/1167) spt-daemon digesthub::tests::render_is_glanceable test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.5218619Z PASS [ 10.897s] ( 321/1167) spt::contract_e2e live_agent_lifecycle_e2e test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.5220795Z PASS [ 2.228s] ( 322/1167) spt-daemon brainproc::tests::trial_rolls_back_after_budget_of_pre_ready_exits test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.5222373Z PASS [ 0.022s] ( 323/1167) spt-daemon digesthub::tests::subscribe_returns_current_base test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.5280793Z PASS [ 0.019s] ( 324/1167) spt-daemon dispatch::tests::unknown_shapes_refuse_classification test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.5327676Z PASS [ 0.028s] ( 325/1167) spt-daemon dispatch::tests::classifies_every_family_by_first_line_shape test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.5348239Z PASS [ 0.022s] ( 326/1167) spt-daemon drivehub::tests::clear_evicts_the_slot test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.5406936Z PASS [ 0.027s] ( 327/1167) spt-daemon drivehub::tests::dead_generation_frame_is_never_served test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.5420430Z PASS [ 0.020s] ( 328/1167) spt-daemon drivehub::tests::write_is_latest_wins test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.5447036Z PASS [ 0.022s] ( 329/1167) spt-daemon drivehub::tests::slots_are_per_owner test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.5481285Z PASS [ 0.026s] ( 330/1167) spt-daemon drivehub::tests::take_is_exactly_once test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.5550022Z PASS [ 0.025s] ( 331/1167) spt-daemon effect::tests::apply_once_does_not_hold_the_journal_lock_across_effect test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.5677967Z PASS [ 0.026s] ( 332/1167) spt-daemon effect::tests::open_creates_missing_parent_dirs test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.5734256Z PASS [ 0.026s] ( 333/1167) spt-daemon effect::tests::second_apply_for_same_key_is_deduped test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.5766713Z PASS [ 0.021s] ( 334/1167) spt-daemon frame::tests::envelope_with_unknown_trailing_field_decodes_on_older_peer test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.5893386Z PASS [ 0.021s] ( 335/1167) spt-daemon frame::tests::handshake_accepts_newer_brain_on_older_broker test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.5896050Z PASS [ 0.062s] ( 336/1167) spt-daemon effect::tests::applied_set_survives_reopen test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.5973063Z PASS [ 0.024s] ( 337/1167) spt-daemon frame::tests::handshake_rejects_below_floor test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.6009478Z PASS [ 0.024s] ( 338/1167) spt-daemon frame::tests::handshake_rejects_role_mismatch test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.6030955Z PASS [ 0.014s] ( 339/1167) spt-daemon frame::tests::unknown_kind_is_not_a_decode_error test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.6034114Z PASS [ 0.059s] ( 340/1167) spt-daemon effect::tests::ptywrite_skips_the_durable_journal_write_while_netsend_persists test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.6045165Z PASS [ 0.070s] ( 341/1167) spt-daemon effect::tests::failed_effect_is_not_recorded_applied test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.6086516Z PASS [ 0.019s] ( 342/1167) spt-daemon grants::tests::escalation_answers_apply test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.6131712Z PASS [ 0.016s] ( 343/1167) spt-daemon grants::tests::escalation_ask_body_roundtrip test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.6210384Z PASS [ 0.018s] ( 344/1167) spt-daemon grants::tests::no_session_escalates_with_none_target test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.6266896Z PASS [ 0.570s] ( 345/1167) spt-daemon daemon::tests::detached_no_inherit_falls_back_under_a_breakaway_denying_job test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.6289424Z PASS [ 0.025s] ( 346/1167) spt-daemon grants::tests::preconsent_flags_author_grants test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.6389610Z PASS [ 0.188s] ( 347/1167) spt-daemon digest::tests::extractor_spans_sessions_with_a_boundary_marker test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.6394507Z PASS [ 0.032s] ( 348/1167) spt-daemon grants::tests::reserved_capabilities_refuse_even_when_granted test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.6395960Z PASS [ 0.031s] ( 349/1167) spt-daemon grants::tests::ungranted_escalates_granted_allows test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.6474927Z PASS [ 0.034s] ( 350/1167) spt-daemon harnesshost::tests::mint_session_id_is_fresh_hex test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.6502429Z PASS [ 0.024s] ( 351/1167) spt-daemon harnesshost::tests::prepare_fills_env_inject_values_with_substitution test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.6553081Z PASS [ 0.034s] ( 352/1167) spt-daemon harnesshost::tests::prepare_fails_closed_on_wrong_kind_missing_role_and_bad_template test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.6565095Z PASS [ 0.028s] ( 353/1167) spt-daemon harnesshost::tests::prepare_fills_id_and_session_into_self_command test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.6577541Z PASS [ 0.022s] ( 354/1167) spt-daemon harnesshost::tests::prepare_resume_falls_back_to_self_when_no_resume_role test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.6592414Z PASS [ 0.022s] ( 355/1167) spt-daemon harnesshost::tests::prepare_selects_resume_template_on_resume_else_self test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.6610231Z PASS [ 0.022s] ( 356/1167) spt-daemon harnesshost::tests::prepare_threads_translation_binary_path_when_declared test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.6960979Z PASS [ 0.641s] ( 357/1167) spt-daemon daemon::tests::breakaway_spawn_escapes_a_kill_on_close_job test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.7491637Z LEAK [ 2.464s] ( 358/1167) spt-daemon brainproc::tests::trial_kills_alive_never_ready_candidate_before_rollback test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.7777281Z PASS [ 0.236s] ( 359/1167) spt-daemon effect::tests::gauntlet_is_exactly_once_across_brain_crashes test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.7839935Z PASS [ 0.124s] ( 360/1167) spt-daemon lifecycle::tests::orphan_watch_honors_stop_for_live_owner test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.7969278Z PASS [ 0.140s] ( 361/1167) spt-daemon lifecycle::tests::harness_owner_gone_anchors_on_parent_pid test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.8106399Z PASS [ 0.160s] ( 362/1167) spt-daemon lifecycle::tests::crash_signoff_tears_down_when_still_gone test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.8107650Z PASS [ 0.156s] ( 363/1167) spt-daemon lifecycle::tests::daemon_hosted_psyche_liveness_is_status_not_pid test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.8152509Z PASS [ 0.154s] ( 364/1167) spt-daemon lifecycle::tests::pulse_loop_does_not_write_anchor_per_fire test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.8237732Z PASS [ 0.166s] ( 365/1167) spt-daemon lifecycle::tests::orphan_watch_fires_on_dead_owner test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.8258263Z PASS [ 0.179s] ( 366/1167) spt-daemon lifecycle::tests::crash_signoff_spares_recovered_self test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.8275691Z PASS [ 0.017s] ( 367/1167) spt-daemon linkhost::tests::per_capability_act_gate_blocks_until_class_scoped_grant test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.8718334Z PASS [ 0.269s] ( 368/1167) spt-daemon grants::tests::escalation_notif_fires_to_most_recent_and_roundtrips test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.8734791Z PASS [ 0.175s] ( 369/1167) spt-daemon lifecycle::tests::pulse_loop_is_config_paced_and_killable test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.9374118Z PASS [ 0.160s] ( 370/1167) spt-daemon lifecycle::tests::pulse_recency_and_auto_suspend_follow_resting_state test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.9500977Z PASS [ 0.203s] ( 371/1167) spt-daemon lifecycle::tests::pulse_loop_update_preserves_phase_crash_rebases test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.9672967Z PASS [ 0.144s] ( 372/1167) spt-daemon linkhost::tests::run_action_drive_drops_offline_without_wake_or_spool test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.9895418Z PASS [ 0.163s] ( 373/1167) spt-daemon linkhost::tests::run_action_refuses_gated_op_without_spooling test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.9897782Z PASS [ 0.052s] ( 374/1167) spt-daemon livehost::tests::orphan_reap_is_id_specific_spares_a_same_basename_sibling test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:55.9928773Z PASS [ 0.182s] ( 375/1167) spt-daemon linkhost::tests::gateway_typed_owner_resolves_and_drives_keyed_on_id_not_type test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:56.0039244Z PASS [ 0.188s] ( 376/1167) spt-daemon linkhost::tests::prepare_drive_is_live_or_drop_and_never_spools test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:56.0093968Z PASS [ 0.181s] ( 377/1167) spt-daemon linkhost::tests::run_action_relinks_drives_and_refuses test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:56.0815984Z PASS [ 0.077s] ( 378/1167) spt-daemon livehost::tests::reconcile_skips_an_offline_live_endpoint test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:56.0841638Z PASS [ 0.130s] ( 379/1167) spt-daemon livehost::tests::pull_liveness_marks_sessionless_spt_hosted_offline_only test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:56.0987894Z PASS [ 0.127s] ( 380/1167) spt-daemon livehost::tests::pull_reconcile_offlines_perch_when_broker_session_dies test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:56.1041318Z PASS [ 0.020s] ( 381/1167) spt-daemon livehost::tests::residency_classification test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:56.1221274Z PASS [ 0.025s] ( 382/1167) spt-daemon machineid::tests::hash_is_domain_separated_and_stable test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:56.1222057Z PASS [ 0.021s] ( 383/1167) spt-daemon machineid::tests::machine_id_hash_resolves_and_is_stable test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:56.1377238Z PASS [ 0.268s] ( 384/1167) spt-daemon livehost::tests::boot_gate_offlines_sessionless_controllable_then_reconcile_skips_host test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:56.1433584Z PASS [ 0.023s] ( 385/1167) spt-daemon msg::tests::bytes_round_trip_through_payload test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:56.1474677Z PASS [ 0.065s] ( 386/1167) spt-daemon livehost::tests::stop_host_reaps_the_detached_psyche_process test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:56.1492250Z PASS [ 0.024s] ( 387/1167) spt-daemon msg::tests::endpoint_input_frames_round_trip test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:56.1532524Z PASS [ 0.015s] ( 388/1167) spt-daemon msg::tests::input_req_absent_ack_defaults_true_n_minus_1_safe test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:56.1636323Z PASS [ 0.020s] ( 389/1167) spt-daemon msg::tests::input_req_ack_false_round_trips_faithfully test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:56.1655604Z PASS [ 0.020s] ( 390/1167) spt-daemon msg::tests::net_frames_round_trip_and_tolerate_unknown_fields test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:56.1694246Z PASS [ 0.022s] ( 391/1167) spt-daemon msg::tests::output_envelope_round_trips test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:56.1721546Z PASS [ 0.019s] ( 392/1167) spt-daemon msg::tests::presence_event_round_trips_and_tolerates_future_kind test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:56.1747190Z PASS [ 0.377s] ( 393/1167) spt-daemon lifecycle::tests::rest_event_fires_echo_once_and_wake_resurfaces test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:56.1776663Z PASS [ 0.014s] ( 394/1167) spt-daemon msg::tests::spawn_req_tolerates_unknown_field test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:56.2181832Z PASS [ 0.039s] ( 395/1167) spt-daemon nethost::tests::retentive_log_is_lossless_ordered_while_ordinary_log_overwrites test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:56.2195413Z PASS [ 0.228s] ( 396/1167) spt-daemon livehost::tests::reconcile_does_not_double_host test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:56.2333667Z PASS [ 0.225s] ( 397/1167) spt-daemon livehost::tests::reconcile_unhosts_on_offline_transition test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:56.2783804Z PASS [ 0.106s] ( 398/1167) spt-daemon nethost::tests::loopback_conn_is_a_reused_singleton_that_cross_wires_a_stream_pair test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:56.2784746Z PASS [ 0.109s] ( 399/1167) spt-daemon nethost::tests::host_binds_endpoint_to_node_identity test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.0038624Z PASS [ 2.014s] ( 400/1167) spt-daemon livehost::tests::reconcile_hosts_an_online_live_endpoint_and_drives_its_pulse test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.0070921Z PASS [ 1.841s] ( 401/1167) spt-daemon nethost::tests::bounded_block_on_cuts_a_never_completing_op_with_an_ordinary_error test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.0187700Z PASS [ 2.145s] ( 402/1167) spt-daemon livehost::tests::fresh_brain_rehydrates_an_online_live_endpoint test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.0189892Z PASS [ 2.023s] ( 403/1167) spt-daemon livehost::tests::reconcile_keeps_driver_on_transient_read_fail_unhosts_on_dir_gone test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.0229115Z PASS [ 1.846s] ( 404/1167) spt-daemon nethost::tests::loopback_tunnel_backpressures_without_loss test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.1056978Z PASS [ 0.090s] ( 405/1167) spt-daemon notif::tests::notif_command_renders_all_keys_and_is_opt_in test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.1081213Z PASS [ 1.891s] ( 406/1167) spt-daemon nethost::tests::two_hosts_dial_over_loopback test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.2072607Z PASS [ 0.201s] ( 407/1167) spt-daemon notif::tests::no_live_endpoint_is_a_typed_no_target test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.2833908Z PASS [ 2.005s] ( 408/1167) spt-daemon notif::tests::hidden_endpoint_boundary_surfaces_nothing test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.3273532Z PASS [ 10.880s] ( 409/1167) spt::bin/spt cli::tests::purge_removes_every_record test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.3515103Z PASS [ 5.019s] ( 410/1167) spt-daemon broker::tests::controller_deliver_is_bounded_never_a_permanent_park test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.3701541Z PASS [ 0.264s] ( 411/1167) spt-daemon notif::tests::shell_notif_templates_render_for_attached_instances_only test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.3878603Z PASS [ 0.018s] ( 412/1167) spt-daemon pairhost::tests::wire_errors_classify_for_the_guided_ux test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.4246014Z PASS [ 0.037s] ( 413/1167) spt-daemon presence::tests::mra_degrades_to_local_and_skips_noise_rows test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.4523899Z PASS [ 2.234s] ( 414/1167) spt-daemon notif::tests::consent_decision_produces_notif_only_when_gated test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.4541411Z PASS [ 2.221s] ( 415/1167) spt-daemon notif::tests::first_fire_reaches_most_recent_visible_endpoint test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.4892255Z PASS [ 0.282s] ( 416/1167) spt-daemon notifsync::tests::concurrent_dismiss_and_surface_commute_across_the_feed test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.4894583Z PASS [ 0.037s] ( 417/1167) spt-daemon presence::tests::snapshot_loading_degrades_on_junk test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.4911039Z PASS [ 0.066s] ( 418/1167) spt-daemon presence::tests::mra_joins_local_and_gossiped_legs_under_one_max test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.4923163Z PASS [ 0.489s] ( 419/1167) spt-daemon notif::tests::hidden_endpoint_is_never_the_target test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.5025541Z PASS [ 0.013s] ( 420/1167) spt-daemon propagate::tests::classifier_maps_every_status_shape test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.5409415Z PASS [ 0.087s] ( 421/1167) spt-daemon presence::tests::subnet_scope_gates_both_legs test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.5410245Z PASS [ 2.263s] ( 422/1167) spt-daemon notif::tests::first_fire_redirects_to_a_fresher_remote_winner_unmarked test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.5416528Z PASS [ 0.214s] ( 423/1167) spt-daemon notifsync::tests::non_member_subnet_record_never_materializes test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.5586283Z PASS [ 0.275s] ( 424/1167) spt-daemon notifsync::tests::feed_converges_two_stores_and_dismiss_replicates test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.5977378Z PASS [ 0.246s] ( 425/1167) spt-daemon notifsync::tests::untrusted_and_cross_subnet_origins_are_dropped test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.6374334Z PASS [ 0.617s] ( 426/1167) spt-daemon notif::tests::rollback_notif_is_loud_and_resurfaces test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.6400588Z PASS [ 0.624s] ( 427/1167) spt-daemon notif::tests::resurface_delivers_undismissed_with_gates test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.6431280Z PASS [ 0.534s] ( 428/1167) spt-daemon notif::tests::suppression_window_holds_cross_endpoint test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.6556431Z PASS [ 0.057s] ( 429/1167) spt-daemon pump::registry::tests::fire_due_rotations_rotates_due_and_leaves_pending test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.6754917Z PASS [ 0.038s] ( 430/1167) spt-daemon pump::registry::tests::poll_wake_takes_the_advertise_marker_exactly_once test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.6769752Z PASS [ 0.034s] ( 431/1167) spt-daemon pump::tests::choreography_fan_targets_skips_detached_and_self test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.6835811Z PASS [ 11.597s] ( 432/1167) spt::bin/spt cli::tests::fork_forks_homes_and_deletes_exactly_the_source test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.6852353Z PASS [ 0.031s] ( 433/1167) spt-daemon pump::tests::choreography_first_tick_primes_all_legs test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.6975779Z PASS [ 0.022s] ( 434/1167) spt-daemon pump::tests::choreography_mark_after_round_stamps_only_due test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.7036387Z PASS [ 0.027s] ( 435/1167) spt-daemon pump::tests::choreography_peer_step_aborts_on_first_failure test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.7037815Z PASS [ 0.021s] ( 436/1167) spt-daemon pump::tests::choreography_pre_round_once_and_before_any_peer_step test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.7104942Z PASS [ 0.069s] ( 437/1167) spt-daemon pump::registry::tests::pre_round_sweeps_and_refreshes_adverts_each_round test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.7121863Z PASS [ 0.027s] ( 438/1167) spt-daemon pump::tests::choreography_wake_forces_only_that_worker test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.7254468Z PASS [ 0.235s] ( 439/1167) spt-daemon psyrelay::tests::empty_and_oversize_bodies_drop_typed test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.7278531Z PASS [ 0.031s] ( 440/1167) spt-daemon pump::tests::first_tick_is_due_and_never_underflows test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.7333608Z PASS [ 0.030s] ( 441/1167) spt-daemon pump::tests::peer_outcome_timeout_bubbles_ordinary_aborts test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.7343479Z PASS [ 0.025s] ( 442/1167) spt-daemon pump::tests::push_target_is_the_full_roster_minus_self_and_tombstoned test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.7420932Z PASS [ 0.017s] ( 443/1167) spt-daemon pump::tests::supervisor_backoff_doubles_caps_and_resets test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.7503863Z PASS [ 0.017s] ( 444/1167) spt-daemon pump::tests::wake_forces_a_round_regardless_of_cadence test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.7660215Z PASS [ 0.024s] ( 445/1167) spt-daemon reap::tests::reap_without_enroll_is_noop test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.7758634Z PASS [ 0.072s] ( 446/1167) spt-daemon pump::tests::heartbeat_writes_and_advances test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.7759436Z PASS [ 0.026s] ( 447/1167) spt-daemon reconcile::tests::active_node_wins test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.7766287Z PASS [ 0.065s] ( 448/1167) spt-daemon pump::tests::seeded_dial_order_fallback_and_writeback test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.7777657Z PASS [ 0.050s] ( 449/1167) spt-daemon pump::tests::supervisor_restarts_a_panicking_pump_until_stop test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.7840905Z PASS [ 0.018s] ( 450/1167) spt-daemon reconcile::tests::double_active_tiebreaks_deterministically test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.7922946Z PASS [ 0.016s] ( 451/1167) spt-daemon reconcile::tests::fallback_lowest_non_offline test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.8115365Z PASS [ 0.035s] ( 452/1167) spt-daemon reconcile::tests::no_rows_reconciles_locally test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.8222527Z PASS [ 3.039s] ( 453/1167) spt-daemon lifecycle::tests::pulse_tick_ingests_drop test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.8235016Z PASS [ 0.321s] ( 454/1167) spt-daemon psyrelay::tests::null_stdout_driver_fails_the_guard test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.8541589Z PASS [ 0.313s] ( 455/1167) spt-daemon psyrelay::tests::prose_only_relays_nothing test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.8547502Z PASS [ 0.313s] ( 456/1167) spt-daemon psyrelay::tests::reply_without_target_is_dropped test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.8687960Z PASS [ 0.092s] ( 457/1167) spt-daemon registryhost::tests::admitted_feeds_stamp_the_heard_map test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.8718969Z PASS [ 0.378s] ( 458/1167) spt-daemon psyrelay::tests::notify_without_live_endpoint_is_pending test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.8868362Z PASS [ 0.102s] ( 459/1167) spt-daemon registryhost::tests::advertise_local_stamps_the_node_label test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.9053486Z PASS [ 0.051s] ( 460/1167) spt-daemon registryhost::tests::apply_feed_gates_and_merges_under_the_lease test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.9060178Z PASS [ 0.082s] ( 461/1167) spt-daemon registryhost::tests::apply_feed_flips_only_on_observed_transition_to_active test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.9074061Z PASS [ 0.130s] ( 462/1167) spt-daemon registryhost::tests::advertise_local_scans_and_respects_visibility test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.9087969Z PASS [ 0.054s] ( 463/1167) spt-daemon registryhost::tests::apply_node_labels_gates_and_merges test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.9170582Z PASS [ 0.124s] ( 464/1167) spt-daemon registryhost::tests::advertisement_carries_both_authored_blurb test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.9180794Z PASS [ 0.105s] ( 465/1167) spt-daemon registryhost::tests::advertisement_carries_the_presence_datum test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.9444363Z PASS [ 0.122s] ( 466/1167) spt-daemon registryhost::tests::advertisement_follows_resting_transitions_epoch_bumped test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.9445266Z PASS [ 0.073s] ( 467/1167) spt-daemon registryhost::tests::evict_silent_peers_drops_unheard_rows_and_rewrites_snapshots test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.9460034Z PASS [ 0.041s] ( 468/1167) spt-daemon registryhost::tests::superseded_requires_label_and_machine_id_under_other_key test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.9493141Z PASS [ 0.062s] ( 469/1167) spt-daemon registryhost::tests::evict_silent_peers_never_touches_own_rows test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.9517345Z PASS [ 0.044s] ( 470/1167) spt-daemon registryhost::tests::with_epoch_is_the_one_canonical_counter test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.9528558Z PASS [ 0.084s] ( 471/1167) spt-daemon registryhost::tests::erased_perch_is_advertised_offline_not_left_active test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.9592058Z PASS [ 0.054s] ( 472/1167) spt-daemon registryhost::tests::repair_evict_tombstones_roster_snapshot_and_notices test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.9912546Z PASS [ 0.047s] ( 473/1167) spt-daemon relcache::tests::single_platform_stamp_is_explicit_and_cleared_on_restage test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.9980804Z PASS [ 0.081s] ( 474/1167) spt-daemon relcache::tests::applied_state_two_phase_round_trips_and_degrades test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.9981851Z PASS [ 0.054s] ( 475/1167) spt-daemon relcache::tests::partial_update_set_can_serve_held_platform_only test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.9994196Z PASS [ 0.458s] ( 476/1167) spt-daemon psyrelay::tests::reply_relays_to_inbound_sender test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:58.9996226Z PASS [ 0.509s] ( 477/1167) spt-daemon psyrelay::tests::notify_reaches_own_user_only test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:59.0001758Z PASS [ 0.054s] ( 478/1167) spt-daemon relcache::tests::stage_round_trips_and_restage_replaces test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:59.0121860Z PASS [ 0.063s] ( 479/1167) spt-daemon relcache::tests::torn_or_corrupt_stage_offers_nothing test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:59.0140701Z PASS [ 0.061s] ( 480/1167) spt-daemon release::tests::artifact_digest_mismatch_is_rejected test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:59.0147521Z PASS [ 0.063s] ( 481/1167) spt-daemon relcache::tests::update_set_round_trips_and_loads_by_platform test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:59.0210217Z PASS [ 0.062s] ( 482/1167) spt-daemon release::tests::builtin_keys_merge_and_revoke_under_file_overlay test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:59.0266822Z PASS [ 0.028s] ( 483/1167) spt-daemon release::tests::hex_roundtrips test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:59.0329721Z PASS [ 0.042s] ( 484/1167) spt-daemon release::tests::channel_mismatch_is_rejected test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:59.0338203Z PASS [ 0.036s] ( 485/1167) spt-daemon release::tests::expired_metadata_is_rejected test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:59.0482605Z PASS [ 0.048s] ( 486/1167) spt-daemon release::tests::revoked_key_is_rejected test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:59.0517166Z PASS [ 0.039s] ( 487/1167) spt-daemon release::tests::shipped_builtin_table_is_well_formed test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:59.0597141Z PASS [ 0.060s] ( 488/1167) spt-daemon release::tests::production_policy_loads_fail_closed test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:59.0600448Z PASS [ 0.060s] ( 489/1167) spt-daemon release::tests::non_monotonic_version_is_rollback test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:59.0625496Z PASS [ 0.504s] ( 490/1167) spt-daemon psyrelay::tests::spoofed_routing_is_stripped_and_restamped test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:59.0649867Z PASS [ 0.051s] ( 491/1167) spt-daemon release::tests::tampered_metadata_fails_signature test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:59.0752048Z PASS [ 0.060s] ( 492/1167) spt-daemon release::tests::untrusted_key_is_unknown test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:59.0801062Z PASS [ 0.059s] ( 493/1167) spt-daemon release::tests::update_set_artifact_mismatch_is_rejected test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:59.0852798Z PASS [ 0.052s] ( 494/1167) spt-daemon release::tests::update_set_missing_platform_is_typed_rejection test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:59.0891142Z PASS [ 0.055s] ( 495/1167) spt-daemon release::tests::update_set_tampering_breaks_whole_set_signature test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:59.0913230Z PASS [ 0.065s] ( 496/1167) spt-daemon release::tests::update_set_channel_and_rollback_gates_hold test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:59.0931542Z PASS [ 0.045s] ( 497/1167) spt-daemon release::tests::update_set_verifies_and_selects_platform_artifact test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:59.0985511Z PASS [ 0.046s] ( 498/1167) spt-daemon release::tests::valid_release_verifies_and_artifact_matches test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:59.1105939Z PASS [ 0.048s] ( 499/1167) spt-daemon resting::tests::apply_event_echo_failure_is_loud_but_state_persists test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:59.1107637Z PASS [ 0.035s] ( 500/1167) spt-daemon resting::tests::auto_suspend_counts_from_dormancy_onset_and_is_opt_in test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:59.1216830Z PASS [ 0.062s] ( 501/1167) spt-daemon release::tests::verify_detached_signs_raw_artifact_bytes test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:59.1225208Z PASS [ 0.057s] ( 502/1167) spt-daemon resting::tests::apply_event_fires_echo_once_per_rest_edge_and_wake_on_wake test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:59.1243636Z PASS [ 0.035s] ( 503/1167) spt-daemon resting::tests::freshness_pull_marker_is_taken_exactly_once test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:59.1249218Z PASS [ 0.065s] ( 504/1167) spt-daemon resting::tests::apply_event_auto_suspends_under_the_resolved_chain test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:59.1253689Z PASS [ 0.034s] ( 505/1167) spt-daemon resting::tests::knob_chain_resolves_global_node_endpoint test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:59.1353449Z PASS [ 0.050s] ( 506/1167) spt-daemon resting::tests::deferred_held_keys_on_the_durable_rest_record test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:59.1423774Z PASS [ 0.032s] ( 507/1167) spt-daemon resting::tests::transition_table_matches_the_context_model test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:59.1471111Z PASS [ 0.036s] ( 508/1167) spt-daemon rollback_compat::tests::pre_ready_durable_files_are_additive_and_n1_readable test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:59.1519787Z PASS [ 0.054s] ( 509/1167) spt-daemon resting::tests::rest_record_round_trips_with_anchor_discipline test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:59.1581700Z PASS [ 0.036s] ( 510/1167) spt-daemon seedmap::tests::put_refreshes_existing test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:59.1643685Z PASS [ 0.042s] ( 511/1167) spt-daemon seedmap::tests::put_then_take_consumes_once test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:59.1662985Z PASS [ 0.042s] ( 512/1167) spt-daemon seedmap::tests::request_stop_barrier_holds_until_no_listener test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:59.1705257Z PASS [ 0.046s] ( 513/1167) spt-daemon seedmap::tests::stop_op_acks_then_serve_returns test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:59.1710172Z PASS [ 0.036s] ( 514/1167) spt-daemon seedproofx::grace_tests::grade_truth_table test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:59.1756156Z PASS [ 0.033s] ( 515/1167) spt-daemon seedproofx::grace_tests::seed_never_appears_in_roster_gossip test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:59.1760459Z PASS [ 0.051s] ( 516/1167) spt-daemon seedmap::tests::take_absent_is_none test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:59.1783522Z PASS [ 0.031s] ( 517/1167) spt-daemon seedproofx::grace_tests::seedxfer_frame_round_trips_and_rejects_malformed test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:59.1825455Z PASS [ 0.031s] ( 518/1167) spt-daemon seedproofx::roster_tests::empty_roster_frame_round_trips test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:59.1861467Z PASS [ 0.028s] ( 519/1167) spt-daemon seedproofx::roster_tests::gapfill_fills_absent_only_and_skips_self test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:59.1894154Z PASS [ 0.025s] ( 520/1167) spt-daemon seedproofx::roster_tests::malformed_roster_frame_rejected test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:59.1995014Z PASS [ 0.033s] ( 521/1167) spt-daemon seedproofx::roster_tests::roster_frame_round_trips test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:59.1995673Z PASS [ 0.282s] ( 522/1167) spt-daemon relay::tests::run_honors_stop test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:59.2015082Z PASS [ 0.121s] ( 523/1167) spt-daemon resting::tests::daemon_rest_event_arms_gate_at_rest_edge_only test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:59.2058684Z PASS [ 0.035s] ( 524/1167) spt-daemon service::tests::plan_start_prefers_service_then_spawn_idempotent test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:59.2073962Z PASS [ 0.032s] ( 525/1167) spt-daemon service::tests::plan_stop_routes_managed_then_ipc_then_noop test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:59.2107398Z PASS [ 0.035s] ( 526/1167) spt-daemon service::tests::run_refused_only_when_windows_and_vanishing test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:59.2145629Z PASS [ 0.036s] ( 527/1167) spt-daemon shellchan::tests::drive_frame_shape_mirrors_sensory test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:59.2185986Z PASS [ 0.036s] ( 528/1167) spt-daemon shellchan::tests::frames_compose_and_stamp_roundtrips test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:59.2188240Z PASS [ 0.048s] ( 529/1167) spt-daemon serveprobe::tests::is_serving_subnet_honors_membership_and_detach test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:59.2217985Z PASS [ 0.036s] ( 530/1167) spt-daemon shellchan::tests::sensory_text_file_frames_shape test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:59.2276222Z PASS [ 0.038s] ( 531/1167) spt-daemon shellchan::tests::vocab_check_bounds_ops_and_args test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:59.2556689Z PASS [ 0.056s] ( 532/1167) spt-daemon shelldisc::tests::discover_across_joins_other_node_subnet_adapters test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:59.2560272Z PASS [ 0.163s] ( 533/1167) spt-daemon resting::tests::rest_edges_cascade_shells_with_divergence test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:59.2850663Z PASS [ 0.376s] ( 534/1167) spt-daemon relay::tests::respawn_loses_no_spooled_message test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:59.2891124Z PASS [ 0.066s] ( 535/1167) spt-daemon shellhost::tests::link_key_and_frame_mac_roundtrip test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:59.2945517Z PASS [ 0.093s] ( 536/1167) spt-daemon shelldisc::tests::shell_context_renders_sections_and_empties_to_none test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:59.2975117Z PASS [ 0.078s] ( 537/1167) spt-daemon shellhost::tests::launch_fails_closed_on_bad_templates test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:59.3024217Z PASS [ 0.074s] ( 538/1167) spt-daemon shellwake::tests::backoff_curve_doubles_to_the_cap test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:59.3071694Z PASS [ 0.091s] ( 539/1167) spt-daemon shellhost::tests::gateway_typed_owner_spawns_and_owns_a_shell test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:59.3248606Z PASS [ 0.037s] ( 540/1167) spt-daemon shellwake::tests::resolve_wake_refuses_without_a_reachable_owner test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:59.3318958Z PASS [ 0.112s] ( 541/1167) spt-daemon shellhost::tests::launch_parks_token_and_bind_by_token_onlines test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:59.3611858Z PASS [ 0.055s] ( 542/1167) spt-daemon sync::tests::gate_decision_table test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:00.0600993Z PASS [ 0.775s] ( 543/1167) spt-daemon shellwake::tests::resolve_wake_leaves_a_dormant_owner_and_relaunches test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:00.9214572Z PASS [ 1.721s] ( 544/1167) spt-daemon shelldisc::tests::discovery_own_plus_broadcast_gated_instantiable test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:00.9252430Z PASS [ 1.664s] ( 545/1167) spt-daemon shellwake::tests::reconcile_resolves_profile_overlay test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:00.9345603Z PASS [ 1.573s] ( 546/1167) spt-daemon translation::tests::inject_floor_buffers_while_held_then_drains_in_order test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:00.9376966Z PASS [ 0.877s] ( 547/1167) spt-daemon translation::tests::key_cmd_parses_each_wire_shape test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:00.9431510Z PASS [ 0.023s] ( 548/1167) spt-daemon translation::tests::key_to_bytes_send_keys_map test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:00.9616739Z PASS [ 0.027s] ( 549/1167) spt-daemon transport::tests::local_socket_handshake_and_frame_round_trip test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:00.9630645Z PASS [ 0.041s] ( 550/1167) spt-daemon translation::tests::to_binary_serializes_to_wire_and_input_is_content_free test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:00.9678863Z PASS [ 0.028s] ( 551/1167) spt-daemon transport::tests::local_socket_rejects_wrong_role test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:00.9856249Z PASS [ 0.040s] ( 552/1167) spt-daemon tunnelhub::tests::clear_evicts_the_entry test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:00.9967692Z PASS [ 1.694s] ( 553/1167) spt-daemon shellwake::tests::watcher_opcode_exit_fires_resolution_once test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:01.0003921Z PASS [ 0.031s] ( 554/1167) spt-daemon tunnelhub::tests::relink_overwrites_the_entry_with_a_fresh_generation test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:01.0026899Z PASS [ 0.035s] ( 555/1167) spt-daemon tunnelhub::tests::entries_are_per_owner test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:01.0057487Z PASS [ 0.036s] ( 556/1167) spt-daemon tunnelhub::tests::dead_generation_stream_is_never_surfaced test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:01.0202731Z PASS [ 0.036s] ( 557/1167) spt-daemon tunnelhub::tests::resolve_serves_each_end_under_the_opening_token test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:01.0383995Z PASS [ 0.040s] ( 558/1167) spt-daemon update::tests::classify_brain_only_when_broker_hosts_new_brain test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:01.0384776Z PASS [ 0.042s] ( 559/1167) spt-daemon update::tests::apply_refuses_non_brain_only_plan test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:01.0400601Z PASS [ 0.043s] ( 560/1167) spt-daemon update::tests::classify_broker_breaking_on_resource_abi_change test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:01.0568498Z PASS [ 0.055s] ( 561/1167) spt-daemon update::tests::classify_broker_compatible_when_brain_below_floor test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:01.0678546Z PASS [ 0.045s] ( 562/1167) spt-daemon update::tests::plan_verified_produces_no_plan_for_a_rejected_release test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:01.0759379Z PASS [ 2.331s] ( 563/1167) spt-daemon reap::tests::job_reaps_enrolled_child_and_grandchild test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:01.0941677Z PASS [ 0.053s] ( 564/1167) spt-daemon wan::tests::origin_user_backed_matrix test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:01.0971169Z PASS [ 0.040s] ( 565/1167) spt-daemon wan::tests::wan_user_msg_restamped_unless_origin_user_backed test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:01.0977523Z PASS [ 1.799s] ( 566/1167) spt-daemon shellwake::tests::resolve_wake_revives_a_suspended_owner_without_double_launch test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:01.1007559Z PASS [ 0.028s] ( 567/1167) spt-daemon xfer::tests::resolve_under_confines_to_root test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:01.1064725Z PASS [ 0.059s] ( 568/1167) spt-daemon update::tests::plan_verified_yields_a_plan_for_a_valid_release test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:01.1217348Z PASS [ 0.081s] ( 569/1167) spt-daemon update::tests::plan_verified_update_set_uses_selected_platform_spec test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:01.1244130Z PASS [ 0.052s] ( 570/1167) spt-daemon xfer::tests::recv_state_chunks_idempotent_and_commit_replays_safely test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:01.1457668Z PASS [ 0.027s] ( 571/1167) spt-daemon::netbroker netless_broker_probes_gracefully test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:01.2061730Z PASS [ 1.993s] ( 572/1167) spt-daemon shellhost::tests::close_shell_ephemeral_tears_down_and_frees_the_slot test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:01.2111629Z PASS [ 0.113s] ( 573/1167) spt-daemon::netbroker broker_owns_endpoint_and_reports_status test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:01.2836184Z PASS [ 2.028s] ( 574/1167) spt-daemon shellwake::tests::reconcile_flips_watchers_with_instance_state test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:01.2956442Z PASS [ 2.084s] ( 575/1167) spt-daemon shellhost::tests::close_shell_delivers_pre_close_then_kills_and_flips_offline test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:01.3337443Z PASS [ 0.126s] ( 576/1167) spt-daemon::netbroker unknown_net_frame_is_reported_not_fatal test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:01.3363649Z PASS [ 0.241s] ( 577/1167) spt-daemon::netbroker brain_dials_second_broker_over_loopback test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:01.3663243Z PASS [ 0.213s] ( 578/1167) spt-daemon::netbroker replayed_dial_op_is_deduped_across_brain_restart test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:01.5196999Z PASS [ 2.313s] ( 579/1167) spt-daemon shellhost::tests::close_shell_dead_child_is_prompt_and_manifestless_never_erases test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:01.6632551Z PASS [ 0.327s] ( 580/1167) spt-daemon::presence presence_history_replays_from_zero_for_a_late_subscriber test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:01.7016752Z PASS [ 0.606s] ( 581/1167) spt-daemon::mesh staggered_offliner_still_meshes test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:01.7405767Z PASS [ 0.648s] ( 582/1167) spt-daemon::access whitelist_refuses_exempts_replies_and_admits_listed test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:01.7911547Z PASS [ 0.505s] ( 583/1167) spt-daemon::netstream sender_brain_restart_redrive_is_exactly_once test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:01.7914574Z PASS [ 0.459s] ( 584/1167) spt-daemon::pairjoin daemon_hosted_responder_pairs_a_loopback_joiner_end_to_end test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:01.8992300Z PASS [ 0.608s] ( 585/1167) spt-daemon::notifsync notif_spools_converge_over_the_wire_and_dismiss_replicates test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:01.9037472Z PASS [ 0.241s] ( 586/1167) spt-daemon::propagate rollback_offer_is_rejected_before_any_fetch test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:02.0027149Z PASS [ 2.704s] ( 587/1167) spt-daemon shellwake::tests::watcher_crash_exits_respawn_then_give_up test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:02.0555362Z PASS [ 0.314s] ( 588/1167) spt-daemon::propagate tampered_relay_artifact_is_rejected_and_never_staged test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:02.1015043Z PASS [ 0.887s] ( 589/1167) spt-daemon::netstream receiver_brain_restart_is_gapless_and_exactly_once test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:02.1016436Z PASS [ 0.310s] ( 590/1167) spt-daemon::propagate untrusted_origin_gets_no_offer test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:02.1310585Z PASS [ 1.038s] ( 591/1167) spt-daemon::mesh all_online_star_a_reaches_c_b_never_relays test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:02.2529172Z PASS [ 0.463s] ( 592/1167) spt-daemon::propagate update_set_propagates_selected_platform_artifact test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:02.2677851Z PASS [ 0.748s] ( 593/1167) spt-daemon::propagate chain_self_heal_propagates_with_gate_at_every_hop test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:02.3148778Z PASS [ 0.216s] ( 594/1167) spt-daemon::reseed benign_offliner_is_reseeded_across_a_rotation test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:02.3402593Z PASS [ 3.015s] ( 595/1167) spt-daemon sync::tests::reconcile_driver_structurally_excludes_live_role test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:02.3451839Z PASS [ 0.214s] ( 596/1167) spt-daemon::rosterprop roster_exchange_never_leaks_unproven_subnets test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:02.3522100Z PASS [ 0.651s] ( 597/1167) spt-daemon::propagate status_query_drives_the_convergence_table_end_to_end test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:02.4210618Z PASS [ 0.364s] ( 598/1167) spt-daemon::replicate registries_converge_over_the_wire_and_the_lease_holds test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:02.4211387Z PASS [ 0.169s] ( 599/1167) spt-daemon::rosterprop roster_propagates_transitively_on_connect test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:02.4486571Z PASS [ 0.108s] ( 600/1167) spt-daemon::seedproofx proven_verdict_is_the_shared_set test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:02.4494366Z PASS [ 0.181s] ( 601/1167) spt-daemon::seedproofx both_members_prove_and_cache_the_shared_subnet test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:02.6648488Z PASS [ 0.663s] ( 602/1167) spt-daemon::pumpdeadline pump_brain_times_out_when_broker_never_replies test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:02.8721056Z PASS [ 3.541s] ( 603/1167) spt-daemon sync::tests::select_refs_scopes_two_tiers test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:02.8805383Z PASS [ 0.215s] ( 604/1167) spt-daemon::wanmsg wan_user_msg_from_unproven_origin_is_restamped_at_the_funnel test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:02.9115195Z PASS [ 1.794s] ( 605/1167) spt-daemon::netbroker dial_to_a_black_holing_peer_fails_with_a_bounded_ordinary_error test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:02.9233680Z PASS [ 0.012s] ( 606/1167) spt-live context::tests::direct_always_writes test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:02.9684034Z PASS [ 0.519s] ( 607/1167) spt-daemon::wanmsg wan_message_lands_exactly_once_under_transport_origin test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:02.9788736Z PASS [ 0.050s] ( 608/1167) spt-live context::tests::identified_write_stamps_advancing_vector test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:02.9838964Z PASS [ 0.016s] ( 609/1167) spt-live context::tests::llm_over_llm_writes test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:02.9844996Z PASS [ 0.536s] ( 610/1167) spt-daemon::wanmsg receiver_restart_replays_feed_without_double_delivery test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:02.9851287Z PASS [ 0.012s] ( 611/1167) spt-live context::tests::llm_past_window_writes test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:02.9932174Z PASS [ 0.009s] ( 612/1167) spt-live context::tests::llm_within_window_suppressed test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:03.0046317Z PASS [ 0.020s] ( 613/1167) spt-live context::tests::pre_identity_write_stamps_v1_shape test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:03.0075680Z PASS [ 0.022s] ( 614/1167) spt-live context::tests::write_context_suppresses_stale_llm test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:03.0688057Z PASS [ 0.063s] ( 615/1167) spt-live digest::tests::extracts_records_from_the_located_source test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:03.0778617Z PASS [ 0.070s] ( 616/1167) spt-live digest::tests::falls_back_to_history_locate_template test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:03.0904905Z PASS [ 0.022s] ( 617/1167) spt-live digest::tests::missing_source_file_is_read_error test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:03.0929500Z PASS [ 0.016s] ( 618/1167) spt-live digest::tests::no_source_errors test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:03.1415508Z PASS [ 0.049s] ( 619/1167) spt-live echo::tests::echo_consumes_history_and_writes_commune test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:03.1542542Z PASS [ 0.064s] ( 620/1167) spt-live echo::tests::echo_child_is_recursion_guarded test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:03.1617829Z PASS [ 0.281s] ( 621/1167) spt-daemon::xfer push_survives_target_brain_restart_exactly_once test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:03.1652837Z PASS [ 0.011s] ( 622/1167) spt-live echo::tests::provenance_is_stamped test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:03.1998916Z PASS [ 0.058s] ( 623/1167) spt-live echo::tests::echo_nonzero_errors test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:03.2088102Z PASS [ 0.337s] ( 624/1167) spt-daemon::xfer fetch_lands_byte_identical_with_progress_both_ends test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:03.2184230Z PASS [ 0.010s] ( 625/1167) spt-live history::tests::missing_fetcher_field_errors test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:03.2249725Z PASS [ 0.060s] ( 626/1167) spt-live history::tests::fetcher_yields_records test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:03.2281256Z PASS [ 0.010s] ( 627/1167) spt-live history::tests::native_missing_log_is_empty test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:03.2386549Z PASS [ 0.014s] ( 628/1167) spt-live history::tests::native_reads_logged_records test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:03.2692549Z PASS [ 0.069s] ( 629/1167) spt-live history::tests::locate_normalize_reads_and_normalizes test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:03.5311065Z LEAK [ 0.538s] ( 630/1167) spt-live digest::tests::extractor_timeout_errors test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:03.5406879Z PASS [ 0.010s] ( 631/1167) spt-live ingest::tests::no_drops_is_empty test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:03.7028398Z LEAK [ 0.540s] ( 632/1167) spt-live history::tests::fetcher_timeout_errors test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:04.0341929Z PASS [ 0.796s] ( 633/1167) spt-live ingest::tests::commune_drop_is_ingested_and_deleted test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:04.0490530Z PASS [ 0.015s] ( 634/1167) spt-live inject::tests::long_body_is_capped test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:04.0615997Z PASS [ 0.793s] ( 635/1167) spt-live ingest::tests::ingest_never_writes_the_live_role test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:04.0676159Z PASS [ 0.018s] ( 636/1167) spt-live inject::tests::missing_perch_is_best_effort test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:04.0782276Z PASS [ 0.011s] ( 637/1167) spt-live outbound::tests::empty_body_parses_to_empty_intent test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:04.0864222Z PASS [ 0.024s] ( 638/1167) spt-live inject::tests::tap_appends_a_context_entry test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:04.1062992Z PASS [ 0.027s] ( 639/1167) spt-live outbound::tests::malformed_and_chunk_lines_are_skipped test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:04.1104629Z PASS [ 0.021s] ( 640/1167) spt-live outbound::tests::non_authorable_types_are_ignored test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:04.1109209Z PASS [ 0.567s] ( 641/1167) spt-live ingest::tests::stale_commune_suppressed_but_deleted test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:04.1212306Z PASS [ 0.014s] ( 642/1167) spt-live outbound::tests::parses_reply_and_notify_in_order test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:04.1268017Z PASS [ 0.019s] ( 643/1167) spt-live outbound::tests::prose_only_yields_nothing test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:04.1292324Z PASS [ 0.021s] ( 644/1167) spt-live outbound::tests::spoofed_routing_attrs_are_unrepresentable test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:04.1382150Z PASS [ 0.019s] ( 645/1167) spt-live psyche::tests::prompt_includes_time_and_event test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:04.1449336Z PASS [ 0.019s] ( 646/1167) spt-live psyche::tests::prompt_without_event test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:04.1555218Z PASS [ 0.017s] ( 647/1167) spt-live pulse::tests::echo_gate_fires_exactly_once test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:04.1753574Z PASS [ 0.020s] ( 648/1167) spt-live pulse::tests::tick_reports_idle test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:04.2068459Z PASS [ 16.562s] ( 649/1167) spt::bin/spt cli::tests::shell_spawn_gates_on_the_registered_set test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:04.2116005Z PASS [ 2.311s] ( 650/1167) spt-daemon::pump pump_and_dispatch_self_drive_the_subnet test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:04.2140940Z PASS [ 0.081s] ( 651/1167) spt-live psyche::tests::spawn_binds_nested_perch_and_sets_guard test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:04.3830380Z PASS [ 1.154s] ( 652/1167) spt-live ingest::tests::both_drops_ingested test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:04.3855059Z PASS [ 2.285s] ( 653/1167) spt-daemon::reseed revoked_node_is_denied_and_never_reseeded test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:04.4367106Z PASS [ 0.054s] ( 654/1167) spt-live resume::tests::continue_existing_resumes_session test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:04.5233848Z PASS [ 2.208s] ( 655/1167) spt-daemon::seedproofx no_shared_subnet_is_dropped test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:04.6081643Z PASS [ 3.251s] ( 656/1167) spt-daemon::presence presence_survives_brain_restart_with_cursor_resume test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:04.6168173Z PASS [ 0.091s] ( 657/1167) spt-live resume::tests::fresh_with_preload_launches_preloaded test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:04.6271471Z PASS [ 2.280s] ( 658/1167) spt-daemon::seedproofx wrong_seed_is_dropped test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:04.6371455Z PASS [ 0.028s] ( 659/1167) spt-live resume::tests::missing_key_errors_before_spawn test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:04.6475419Z PASS [ 0.022s] ( 660/1167) spt-live signoff::tests::echo_precedes_signoff_compose test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:04.6664472Z PASS [ 0.029s] ( 661/1167) spt-live signoff::tests::missing_session_skips_echo test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:04.6782001Z PASS [ 0.030s] ( 662/1167) spt-live signoff::tests::recovered_self_is_not_signed_off test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:04.6950943Z PASS [ 0.025s] ( 663/1167) spt-live signoff::tests::stale_signoff_swept test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:04.7519554Z PASS [ 2.333s] ( 664/1167) spt-daemon::sync torn_pull_recovers_by_repulling test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:04.7703550Z PASS [ 0.092s] ( 665/1167) spt-live turn::tests::empty_stdout_is_an_error test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:04.7859587Z PASS [ 0.016s] ( 666/1167) spt-msg deliver::tests::deferred_send_validates test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:04.8106134Z PASS [ 0.120s] ( 667/1167) spt-live turn::tests::turn_captures_stdout test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:04.8346386Z PASS [ 0.630s] ( 668/1167) spt-live reconcile::tests::no_conflict_is_a_noop test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:04.9415826Z PASS [ 0.189s] ( 669/1167) spt-msg deliver::tests::deferred_send_skips_stream_drain_survives_for_hook test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:08.6408374Z PASS [ 6.736s] ( 670/1167) spt-daemon::pump pump_survives_a_black_holing_peer_heartbeat_advances_no_restart test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:08.6533325Z PASS [ 0.012s] ( 671/1167) spt-msg emit::tests::anonymous_still_enveloped test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:08.6623656Z PASS [ 0.009s] ( 672/1167) spt-msg emit::tests::multiline_body_escapes_and_round_trips test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:08.6709298Z PASS [ 0.009s] ( 673/1167) spt-msg emit::tests::oversized_listener_line_chunks_into_event_parts test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:08.6793726Z PASS [ 0.008s] ( 674/1167) spt-msg emit::tests::structural_renders_msg_envelope test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:08.6879414Z PASS [ 0.009s] ( 675/1167) spt-msg emit::tests::typed_body_from_wins_over_structural_from_no_double_wrap test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:08.6958150Z PASS [ 0.008s] ( 676/1167) spt-msg emit::tests::user_msg_envelope_renders_verbatim_on_both_edges test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:08.7032444Z PASS [ 0.007s] ( 677/1167) spt-msg emit::tests::whole_render_never_chunks test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:14.4692211Z PASS [ 9.683s] ( 678/1167) spt-msg deliver::tests::offline_existing_perch_spools test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:14.4779873Z PASS [ 10.092s] ( 679/1167) spt-live resume::tests::download_composes_two_tiers test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:14.5167988Z PASS [ 9.706s] ( 680/1167) spt-msg deliver::tests::online_delivers_via_tcp_without_spooling test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:14.5257363Z PASS [ 9.691s] ( 681/1167) spt-msg deliver::tests::recycled_pid_address_does_not_misdeliver test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:14.5428087Z PASS [ 9.602s] ( 682/1167) spt-msg deliver::tests::send_outcome_mapping test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:14.5648488Z PASS [ 5.861s] ( 683/1167) spt-msg listener::tests::bind_registers_and_round_trips test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:14.5953274Z PASS [ 10.451s] ( 684/1167) spt-live pulse::tests::tick_ingests_drops test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:14.6649709Z PASS [ 0.196s] ( 685/1167) spt-msg listener::tests::blocking_accepts_within_window test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:14.6915273Z PASS [ 10.480s] ( 686/1167) spt-live reconcile::tests::suppressed_write_preserves_artifacts test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:14.6916798Z PASS [ 0.175s] ( 687/1167) spt-msg listener::tests::drop_unregisters_address test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:14.7304651Z PASS [ 10.554s] ( 688/1167) spt-live reconcile::tests::failed_turn_preserves_everything test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:14.7322810Z PASS [ 0.040s] ( 689/1167) spt-msg ring::tests::ring_no_perch test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:14.7549867Z PASS [ 0.278s] ( 690/1167) spt-msg listener::tests::blocking_times_out_when_idle test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:14.7680216Z PASS [ 0.013s] ( 691/1167) spt-msg wire::tests::decode_rejects_overrunning_from_len test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:14.7939102Z PASS [ 0.026s] ( 692/1167) spt-msg wire::tests::encode_decode_round_trips_structural test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:14.8144729Z PASS [ 0.020s] ( 693/1167) spt-msg wire::tests::encode_empty_from_is_anonymous test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:14.8224989Z PASS [ 11.120s] ( 694/1167) spt-live ingest::tests::two_slice_drop_routes_per_tier test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:14.8225586Z PASS [ 0.279s] ( 695/1167) spt-msg ready::tests::recv_gets_live_tcp_message test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:14.8230158Z PASS [ 27.409s] ( 696/1167) spt::bin/spt cli::tests::owner_shutdown_gated_by_can_shutdown_grant test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:14.8277207Z PASS [ 0.012s] ( 697/1167) spt-msg wire::tests::frame_round_trips_over_loopback test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:14.8316065Z PASS [ 0.010s] ( 698/1167) spt-msg wire::tests::typed_event_body_rides_verbatim test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:14.8356719Z PASS [ 0.014s] ( 699/1167) spt-msg wire::tests::oversized_length_prefix_rejected test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:14.8374611Z PASS [ 0.242s] ( 700/1167) spt-msg ready::tests::start_ledgers_a_boot_session_row test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:14.8502400Z PASS [ 0.019s] ( 701/1167) spt-net net::attach::tests::attach_intents_round_trip test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:14.8514134Z PASS [ 0.016s] ( 702/1167) spt-net net::attach::tests::kick_take_and_displaced_round_trip test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:14.8539141Z PASS [ 0.017s] ( 703/1167) spt-net net::attach::tests::record_split_across_chunks_reassembles test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:14.8625179Z PASS [ 0.012s] ( 704/1167) spt-net net::attach::tests::records_round_trip_and_unknown_kind_is_skipped test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:14.8640902Z PASS [ 0.338s] ( 705/1167) spt-msg ready::tests::backlog_drains_on_start test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:14.8652684Z PASS [ 0.014s] ( 706/1167) spt-net net::attach::tests::request_without_intent_defaults_to_control test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:14.8743751Z PASS [ 0.012s] ( 707/1167) spt-net net::endpoint::tests::keep_alive_is_under_idle_timeout test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:14.8827596Z PASS [ 0.017s] ( 708/1167) spt-net net::mesh::seedproof::tests::cross_connection_replay_fails test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:14.8852372Z PASS [ 0.320s] ( 709/1167) spt-msg ready::tests::soft_cleanup_preserves_spool_and_info test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:14.8881075Z PASS [ 0.013s] ( 710/1167) spt-net net::mesh::seedproof::tests::forged_proof_fails test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:14.8942860Z PASS [ 0.012s] ( 711/1167) spt-net net::mesh::seedproof::tests::frame_codec_round_trips_and_rejects_garbage test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:14.8983324Z PASS [ 0.013s] ( 712/1167) spt-net net::mesh::seedproof::tests::hello_frame_round_trips_and_rejects_malformed test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:14.9040998Z PASS [ 0.016s] ( 713/1167) spt-net net::mesh::seedproof::tests::mk_derivation_is_deterministic_and_input_sensitive test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:14.9085090Z PASS [ 0.014s] ( 714/1167) spt-net net::mesh::seedproof::tests::mutual_requires_both_sides test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:14.9108844Z PASS [ 0.012s] ( 715/1167) spt-net net::mesh::seedproof::tests::proofset_frame_round_trips_and_rejects_malformed test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:14.9177132Z PASS [ 0.014s] ( 716/1167) spt-net net::mesh::seedproof::tests::valid_proof_verifies_and_roles_differ test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:14.9296606Z PASS [ 0.076s] ( 717/1167) spt-net net::endpoint::tests::endpoint_id_binds_to_identity test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:14.9352425Z PASS [ 0.027s] ( 718/1167) spt-net net::mesh::seedproof::tests::wrong_epoch_fails test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:14.9388222Z PASS [ 0.028s] ( 719/1167) spt-net net::mesh::seedproof::tests::wrong_subnet_fails test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:14.9447613Z PASS [ 0.027s] ( 720/1167) spt-net net::notif::tests::forged_origin_field_is_inert test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:14.9515616Z PASS [ 0.022s] ( 721/1167) spt-net net::notif::tests::record_round_trips_and_unknown_kind_is_skipped test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:14.9530583Z PASS [ 0.018s] ( 722/1167) spt-net net::notif::tests::record_split_across_chunks_reassembles test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:14.9576568Z PASS [ 0.019s] ( 723/1167) spt-net net::pairing::meet::tests::derived_identity_is_deterministic_and_input_bound test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:14.9592102Z PASS [ 0.015s] ( 724/1167) spt-net net::pairing::meet::tests::key_seed_is_not_the_token test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:14.9727326Z PASS [ 0.020s] ( 725/1167) spt-net net::pairing::meet::tests::skewed_window_contains_the_listener_id test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:14.9764727Z PASS [ 0.019s] ( 726/1167) spt-net net::pairing::ntp::tests::offset_applies_signed_and_saturates test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:14.9781207Z PASS [ 0.313s] ( 727/1167) spt-msg ready::tests::start_registers_resolvable_perch test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:14.9803894Z PASS [ 0.020s] ( 728/1167) spt-net net::pairing::ntp::tests::parse_rejects_short_and_zeroed_replies test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:14.9889452Z PASS [ 0.016s] ( 729/1167) spt-net net::pairing::ntp::tests::sntp_query_reads_the_transmit_timestamp test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:14.9947309Z PASS [ 0.018s] ( 730/1167) spt-net net::pairing::ntp::tests::unreachable_server_falls_back test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:14.9952011Z PASS [ 0.131s] ( 731/1167) spt-net net::endpoint::tests::two_endpoints_loopback_echo test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:14.9959060Z PASS [ 0.018s] ( 732/1167) spt-net net::pairing::ratelimit::tests::abandoned_ceremony_is_reclaimed_and_charged test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:14.9996818Z PASS [ 0.020s] ( 733/1167) spt-net net::pairing::ratelimit::tests::backoff_curve_doubles_then_caps test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.0029252Z PASS [ 0.014s] ( 734/1167) spt-net net::pairing::ratelimit::tests::backoff_is_per_subnet test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.0036200Z PASS [ 0.273s] ( 735/1167) spt-msg ring::tests::ring_offline_target_queues_and_cleans_up test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.0086766Z PASS [ 0.014s] ( 736/1167) spt-net net::pairing::ratelimit::tests::failures_impose_exponential_backoff test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.0121043Z PASS [ 0.017s] ( 737/1167) spt-net net::pairing::ratelimit::tests::first_ceremony_is_free_and_success_resets test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.0190348Z PASS [ 0.022s] ( 738/1167) spt-net net::pairing::ratelimit::tests::one_active_ceremony_per_subnet test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.0211072Z PASS [ 0.021s] ( 739/1167) spt-net net::pairing::ratelimit::tests::success_clears_accumulated_backoff test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.0246439Z PASS [ 0.022s] ( 740/1167) spt-net net::pairing::rendezvous::tests::distinct_same_length_names_diverge test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.0281675Z PASS [ 0.025s] ( 741/1167) spt-net net::pairing::rendezvous::tests::length_prefix_prevents_boundary_collision test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.0318127Z PASS [ 0.023s] ( 742/1167) spt-net net::pairing::rendezvous::tests::token_is_deterministic test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.0341693Z PASS [ 0.022s] ( 743/1167) spt-net net::pairing::rendezvous::tests::token_varies_with_name_and_step test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.0418248Z PASS [ 0.023s] ( 744/1167) spt-net net::pairing::rendezvous::tests::window_is_three_adjacent_tokens test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.0488875Z PASS [ 0.358s] ( 745/1167) spt-msg ring::tests::ring_gets_reply_and_cleans_up test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.0682664Z PASS [ 10.630s] ( 746/1167) spt-live resume::tests::download_renders_role_first_then_live_then_project test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.0948781Z PASS [ 0.069s] ( 747/1167) spt-net net::pairing::spake::tests::reflected_role_is_rejected_by_pake test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.1091751Z PASS [ 0.016s] ( 748/1167) spt-net net::pairing::totp::tests::code_at_is_six_zero_padded_digits test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.1259500Z PASS [ 0.104s] ( 749/1167) spt-net net::pairing::spake::tests::matching_code_pairs_and_agrees_on_key test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.1284736Z PASS [ 0.019s] ( 750/1167) spt-net net::pairing::totp::tests::debug_redacts_seed test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.1440091Z PASS [ 0.113s] ( 751/1167) spt-net net::pairing::spake::tests::stale_epoch_fails test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.1471666Z PASS [ 0.021s] ( 752/1167) spt-net net::pairing::totp::tests::generated_seeds_are_distinct test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.1518057Z PASS [ 0.105s] ( 753/1167) spt-net net::pairing::spake::tests::tampered_tag_fails test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.1548933Z PASS [ 0.024s] ( 754/1167) spt-net net::pairing::totp::tests::matches_rfc6238_appendix_b_vectors test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.1570392Z PASS [ 0.120s] ( 755/1167) spt-net net::pairing::spake::tests::stale_step_fails test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.1572204Z PASS [ 0.120s] ( 756/1167) spt-net net::pairing::spake::tests::substituted_pubkey_fails test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.1612828Z PASS [ 0.210s] ( 757/1167) spt-net net::pairing::meet::tests::meet_redirects_joiner_to_the_real_pairing_endpoint test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.1639324Z PASS [ 0.020s] ( 758/1167) spt-net net::pairing::totp::tests::otpauth_uri_is_well_formed_and_encoded test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.1640633Z PASS [ 0.115s] ( 759/1167) spt-net net::pairing::spake::tests::wrong_code_fails_at_confirmation_not_spake test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.1674176Z PASS [ 0.100s] ( 760/1167) spt-net net::pairing::spake::tests::wrong_subnet_fails test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.1676996Z PASS [ 0.021s] ( 761/1167) spt-net net::pairing::totp::tests::seed_round_trips_through_base32 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.1704576Z PASS [ 0.024s] ( 762/1167) spt-net net::pairing::totp::tests::time_step_is_floor_unix_over_period test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.1728509Z PASS [ 0.021s] ( 763/1167) spt-net net::pairing::transcript::tests::diverged_shared_secret_fails_verification test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.1755969Z PASS [ 0.023s] ( 764/1167) spt-net net::pairing::totp::tests::window_accepts_plus_minus_one_only test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.1773835Z PASS [ 0.023s] ( 765/1167) spt-net net::pairing::transcript::tests::each_bound_field_changes_the_tag test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.1798109Z PASS [ 0.019s] ( 766/1167) spt-net net::pairing::transcript::tests::length_prefixing_prevents_boundary_collision test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.1823167Z PASS [ 0.020s] ( 767/1167) spt-net net::pairing::transcript::tests::matching_tag_verifies_and_roles_differ test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.1861623Z PASS [ 0.022s] ( 768/1167) spt-net net::pairing::transcript::tests::message_order_is_bound test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.1919056Z PASS [ 0.025s] ( 769/1167) spt-net net::pairing::transcript::tests::pake_identity_binds_role_and_context test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.2128657Z PASS [ 0.040s] ( 770/1167) spt-net net::pairing::wire::tests::frame_codec_round_trips_and_rejects_garbage test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.2159777Z PASS [ 11.005s] ( 771/1167) spt-live reconcile::tests::reconcile_merges_and_clears test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.2167617Z PASS [ 0.041s] ( 772/1167) spt-net net::pairing::wire::tests::hello_intro_is_additive_and_roundtrips test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.2271487Z PASS [ 0.404s] ( 773/1167) spt-msg::killer_quickstart offline_then_online_delivers_backlog test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.2273812Z PASS [ 0.045s] ( 774/1167) spt-net net::pairing::wire::tests::seed_frame_roster_is_additive_and_roundtrips test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.2427875Z PASS [ 0.027s] ( 775/1167) spt-net net::registry::tests::advertise_if_visible_gates_before_join test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.2476485Z PASS [ 0.031s] ( 776/1167) spt-net net::registry::tests::distinct_nodes_are_separate_instances test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.2506375Z PASS [ 0.023s] ( 777/1167) spt-net net::registry::tests::equal_epoch_replay_is_stale_noop test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.2547657Z PASS [ 0.026s] ( 778/1167) spt-net net::registry::tests::evicting_dead_node_clears_phantom_ambiguity test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.2578591Z PASS [ 0.015s] ( 779/1167) spt-net net::registry::tests::excluded_endpoint_is_not_routable_even_via_node_pin test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.2620922Z PASS [ 0.014s] ( 780/1167) spt-net net::registry::tests::exclusion_prunes_cross_subnet_ambiguity test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.2675832Z PASS [ 0.017s] ( 781/1167) spt-net net::registry::tests::join_collides_even_with_offline_holder test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.2701445Z PASS [ 0.016s] ( 782/1167) spt-net net::registry::tests::join_colliding_id_on_other_node_refuses_untouched test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.2806338Z PASS [ 0.023s] ( 783/1167) spt-net net::registry::tests::join_fresh_id_is_inserted test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.2832047Z PASS [ 0.021s] ( 784/1167) spt-net net::registry::tests::join_same_name_in_different_subnet_is_legal test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.2868873Z PASS [ 0.019s] ( 785/1167) spt-net net::registry::tests::join_same_node_falls_through_to_lease test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.2902320Z PASS [ 0.020s] ( 786/1167) spt-net net::registry::tests::newer_epoch_supersedes_same_node test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.2936565Z PASS [ 0.013s] ( 787/1167) spt-net net::registry::tests::node_label_rides_the_lease_and_serde test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.2971440Z PASS [ 0.014s] ( 788/1167) spt-net net::registry::tests::node_level_label_lease_persist_prune_and_serde test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.3025340Z PASS [ 0.014s] ( 789/1167) spt-net net::registry::tests::node_qualifier_accepts_label_and_prefix_refuses_shared test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.3121329Z PASS [ 0.022s] ( 790/1167) spt-net net::registry::tests::presence_datum_rides_the_lease_and_serde test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.3258437Z PASS [ 0.032s] ( 791/1167) spt-net net::registry::tests::registry_serde_roundtrips test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.3328005Z PASS [ 0.028s] ( 792/1167) spt-net net::registry::tests::rename_ripples_rows_across_advertised_subnets test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.3340545Z PASS [ 0.597s] ( 793/1167) spt-msg ring::tests::ring_timeout_cleans_up test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.3341114Z PASS [ 0.032s] ( 794/1167) spt-net net::registry::tests::rename_collision_refuses_whole_ripple test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.3357478Z PASS [ 0.023s] ( 795/1167) spt-net net::registry::tests::resolve_across_bare_id_in_two_subnets_refuses test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.3514778Z PASS [ 0.025s] ( 796/1167) spt-net net::registry::tests::resolve_across_subnet_qualified_routes_there test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.3556879Z PASS [ 0.026s] ( 797/1167) spt-net net::registry::tests::resolve_across_unique_id_resolves test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.3568837Z PASS [ 0.165s] ( 798/1167) spt-net net::pairing::wire::tests::unknown_subnet_is_rejected test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.3592807Z PASS [ 0.028s] ( 799/1167) spt-net net::registry::tests::resolve_multiple_live_nodes_refuses test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.3593912Z PASS [ 0.531s] ( 800/1167) spt-msg::killer_quickstart two_agents_exchange_message_tcp_and_spool test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.3617019Z PASS [ 0.191s] ( 801/1167) spt-net net::pairing::wire::tests::busy_subnet_refuses_ceremony test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.3622834Z PASS [ 0.175s] ( 802/1167) spt-net net::pairing::wire::tests::stale_step_is_rejected test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.3651089Z PASS [ 0.034s] ( 803/1167) spt-net net::registry::tests::resolve_node_qualifier_pins_and_offline_is_not_found test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.3652489Z PASS [ 0.029s] ( 804/1167) spt-net net::registry::tests::resolve_prefers_local_instance test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.3691752Z PASS [ 0.018s] ( 805/1167) spt-net net::registry::tests::resolve_sole_live_remote_and_skips_offline test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.3706680Z PASS [ 0.015s] ( 806/1167) spt-net net::registry::tests::resource_blurb_rides_the_lease_and_serde test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.3752762Z PASS [ 0.018s] ( 807/1167) spt-net net::registry::tests::resource_projection_filters_hidden_and_offline test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.3789653Z PASS [ 0.021s] ( 808/1167) spt-net net::registry::tests::resource_projection_threads_node_label test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.3809175Z PASS [ 0.023s] ( 809/1167) spt-net net::registry::tests::stale_active_cannot_clobber_newer_offline test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.3852634Z PASS [ 0.027s] ( 810/1167) spt-net net::registry::tests::suspended_is_addressable_and_roundtrips test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.3887734Z PASS [ 0.027s] ( 811/1167) spt-net net::replicate::tests::apply_routes_by_subnet_and_drops_non_member test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.3931713Z PASS [ 0.028s] ( 812/1167) spt-net net::replicate::tests::decoder_survives_chunk_splits_and_corrupt_lines test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.3954033Z PASS [ 0.030s] ( 813/1167) spt-net net::replicate::tests::feed_carries_instances_and_node_labels_wire_compat test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.4001074Z PASS [ 0.031s] ( 814/1167) spt-net net::replicate::tests::stale_wire_update_cannot_clobber_newer_state test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.4072016Z PASS [ 0.035s] ( 815/1167) spt-net net::replicate::tests::update_round_trips_and_tolerates_unknown_field test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.4165869Z PASS [ 0.038s] ( 816/1167) spt-net net::rest::tests::records_round_trip_and_degrade test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.4247479Z PASS [ 0.042s] ( 817/1167) spt-net net::serveprobe::tests::records_round_trip_and_degrade test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.4257839Z PASS [ 0.041s] ( 818/1167) spt-net net::shelllink::tests::records_round_trip_and_degrade test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.4262779Z PASS [ 0.037s] ( 819/1167) spt-net net::sync::tests::forged_origin_field_is_inert test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.4296694Z PASS [ 0.039s] ( 820/1167) spt-net net::sync::tests::record_split_across_chunks_reassembles test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.4387760Z PASS [ 0.256s] ( 821/1167) spt-net net::pairing::wire::tests::repair_member_keeps_seed test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.4390101Z PASS [ 0.223s] ( 822/1167) spt-net net::pairing::wire::tests::wrong_code_fails_and_records_no_membership test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.4416198Z PASS [ 0.045s] ( 823/1167) spt-net net::sync::tests::records_round_trip_and_unknown_kind_is_skipped test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.4416834Z PASS [ 0.043s] ( 824/1167) spt-net net::update::tests::forged_origin_field_is_inert test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.4430701Z PASS [ 0.037s] ( 825/1167) spt-net net::update::tests::records_round_trip_and_unknown_kind_is_skipped test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.4437229Z PASS [ 0.042s] ( 826/1167) spt-net net::update::tests::record_split_across_chunks_reassembles test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.4437904Z PASS [ 0.265s] ( 827/1167) spt-net net::pairing::wire::tests::loopback_pairs_and_transfers_seed_and_roster test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.4444952Z PASS [ 0.274s] ( 828/1167) spt-net net::pairing::wire::tests::create_new_then_join_learns_named_subnet test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.4466626Z PASS [ 0.026s] ( 829/1167) spt-net net::wanmsg::tests::message_round_trips_and_tolerates_unknown_field test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.4467733Z PASS [ 0.033s] ( 830/1167) spt-net net::wanmsg::tests::forged_origin_field_is_inert test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.4500586Z PASS [ 0.028s] ( 831/1167) spt-net net::wanmsg::tests::route_splits_local_and_remote_and_passes_refusals test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.4524340Z PASS [ 0.030s] ( 832/1167) spt-net net::xfer::tests::forged_origin_field_is_inert test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.4605572Z PASS [ 0.033s] ( 833/1167) spt-net net::xfer::tests::record_split_across_chunks_reassembles test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.4662893Z PASS [ 0.030s] ( 834/1167) spt-net net::xfer::tests::records_round_trip_and_unknown_kind_is_skipped test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.4684098Z PASS [ 0.031s] ( 835/1167) spt-proto addr::tests::parses_every_qualifier_combination test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.4713800Z PASS [ 0.033s] ( 836/1167) spt-proto addr::tests::rejects_doubled_delimiters test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.4714326Z PASS [ 0.035s] ( 837/1167) spt-proto addr::tests::display_round_trips test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.4738478Z PASS [ 0.032s] ( 838/1167) spt-proto addr::tests::rejects_empty_or_bad_components test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.4768048Z PASS [ 0.034s] ( 839/1167) spt-proto chunk::tests::malformed_parts_return_none test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.4798712Z PASS [ 0.037s] ( 840/1167) spt-proto chunk::tests::missing_middle_part_is_dropped test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.4836694Z PASS [ 0.039s] ( 841/1167) spt-proto chunk::tests::orphan_group_without_head_is_dropped test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.4869326Z PASS [ 0.041s] ( 842/1167) spt-proto chunk::tests::oversized_line_splits_and_each_part_is_well_formed_and_bounded test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.4899939Z PASS [ 0.043s] ( 843/1167) spt-proto chunk::tests::reassemble_stream_handles_mixed_traffic test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.4925540Z PASS [ 0.042s] ( 844/1167) spt-proto chunk::tests::short_line_passes_through_unchunked test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.5005486Z PASS [ 0.040s] ( 845/1167) spt-proto endpoint::tests::agent_vs_shell_split test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.5046574Z PASS [ 0.038s] ( 846/1167) spt-proto endpoint::tests::broker_and_node_families test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.5077510Z PASS [ 0.039s] ( 847/1167) spt-proto endpoint::tests::day_one_tags_round_trip test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.5094061Z PASS [ 0.038s] ( 848/1167) spt-proto endpoint::tests::shell_kind_round_trips test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.5127811Z PASS [ 0.041s] ( 849/1167) spt-proto endpoint::tests::unknown_tag_tolerated_and_preserved test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.5169290Z PASS [ 0.043s] ( 850/1167) spt-proto envelope::tests::body_escape_is_cr_linesafe test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.5207177Z PASS [ 0.044s] ( 851/1167) spt-proto envelope::tests::body_escape_unescape_round_trips_html_and_newlines test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.5234350Z PASS [ 0.043s] ( 852/1167) spt-proto envelope::tests::decode_is_amp_last_so_literal_entities_do_not_double_decode test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.5264364Z PASS [ 0.043s] ( 853/1167) spt-proto envelope::tests::from_attr_returns_none_on_garbage_or_empty test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.5285643Z PASS [ 0.076s] ( 854/1167) spt-proto chunk::tests::split_then_reassemble_is_byte_identity test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.5292431Z PASS [ 0.042s] ( 855/1167) spt-proto envelope::tests::from_attr_unescape_is_amp_last test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.5330454Z PASS [ 0.043s] ( 856/1167) spt-proto envelope::tests::parser_both_tags_present test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.5359072Z PASS [ 0.043s] ( 857/1167) spt-proto envelope::tests::parser_empty_body_is_some_empty_and_nested_tags_preserved test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.5383820Z PASS [ 0.038s] ( 858/1167) spt-proto envelope::tests::parser_no_tags_falls_back_whole_payload_to_live test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.5416923Z PASS [ 0.037s] ( 859/1167) spt-proto envelope::tests::parser_out_of_order_tags_both_extracted test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.5450457Z PASS [ 0.037s] ( 860/1167) spt-proto envelope::tests::parser_unclosed_live_tag_does_not_scoop_project test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.5487181Z PASS [ 0.039s] ( 861/1167) spt-proto event::tests::alarm_event_round_trips test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.5515294Z PASS [ 0.039s] ( 862/1167) spt-proto event::tests::attr_decode_is_amp_last test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.5545415Z PASS [ 0.038s] ( 863/1167) spt-proto event::tests::attr_order_preserved test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.5578866Z PASS [ 0.037s] ( 864/1167) spt-proto event::tests::body_with_literal_event_tokens_round_trips test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.5607567Z PASS [ 0.037s] ( 865/1167) spt-proto event::tests::empty_body_envelope_parses test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.5644062Z PASS [ 0.038s] ( 866/1167) spt-proto event::tests::malformed_inputs_return_none_without_panic test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.5679071Z PASS [ 0.039s] ( 867/1167) spt-proto event::tests::msg_event_round_trips test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.5703558Z PASS [ 0.041s] ( 868/1167) spt-proto event::tests::psyche_authorable_types_are_reply_and_notify_only test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.5736997Z PASS [ 0.041s] ( 869/1167) spt-proto event::tests::typed_envelope_detected_and_parsed test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.5767800Z PASS [ 0.041s] ( 870/1167) spt-proto event::tests::typed_predicate_rejects_partials test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.5792638Z PASS [ 0.041s] ( 871/1167) spt-proto event::tests::user_msg_envelope_is_n_minus_one_tolerant test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.5829254Z PASS [ 0.041s] ( 872/1167) spt-proto event::tests::user_msg_event_round_trips test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.5849823Z PASS [ 0.040s] ( 873/1167) spt-proto event::tests::user_msg_gate_is_not_payload_trusted test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.5889809Z PASS [ 0.040s] ( 874/1167) spt-proto event::tests::user_msg_identity_gate_truth_table test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.5946112Z PASS [ 0.041s] ( 875/1167) spt-proto id::tests::accepts_japanese_scripts test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.5964300Z PASS [ 0.042s] ( 876/1167) spt-proto id::tests::accepts_plain_and_composite_ids test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.6031675Z PASS [ 0.042s] ( 877/1167) spt-proto id::tests::rejects_path_whitespace_and_control test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.6036310Z PASS [ 0.046s] ( 878/1167) spt-proto id::tests::rejects_empty_and_overlong test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.6056186Z PASS [ 0.041s] ( 879/1167) spt-proto id::tests::reports_bad_char_position test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.6084387Z PASS [ 0.040s] ( 880/1167) spt-proto id::tests::reserves_address_delimiters test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.6182151Z PASS [ 0.048s] ( 881/1167) spt-proto identity::tests::bad_inputs_error_without_panic test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.6305112Z PASS [ 0.054s] ( 882/1167) spt-proto identity::tests::public_key_hex_round_trips test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.6329297Z PASS [ 0.059s] ( 883/1167) spt-proto identity::tests::known_answer_fixed_seed_is_stable test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.6330744Z PASS [ 0.050s] ( 884/1167) spt-proto payload::tests::base64_known_vectors test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.6349886Z PASS [ 0.050s] ( 885/1167) spt-proto payload::tests::binary_blob_round_trips_all_byte_values test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.6385907Z PASS [ 0.050s] ( 886/1167) spt-proto payload::tests::blob_padding_lengths_round_trip test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.6411778Z PASS [ 0.049s] ( 887/1167) spt-proto payload::tests::command_payload_round_trips test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.6470724Z PASS [ 0.051s] ( 888/1167) spt-proto payload::tests::text_payload_round_trips test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.6505621Z PASS [ 0.047s] ( 889/1167) spt-proto payload::tests::unknown_or_malformed_decodes_to_none test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.6544605Z PASS [ 0.050s] ( 890/1167) spt-proto version::tests::current_version_self_compatible test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.6572313Z PASS [ 0.052s] ( 891/1167) spt-proto version::tests::n_minus_one_window_accepts_and_rejects test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.6599457Z PASS [ 0.052s] ( 892/1167) spt-proto version::tests::window_floor_saturates_at_zero test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.6669823Z PASS [ 0.088s] ( 893/1167) spt-proto identity::tests::sign_verify_round_trip test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.6807733Z PASS [ 0.050s] ( 894/1167) spt-runtime manifest::tests::digest_section_source_resolution test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.6840979Z PASS [ 0.051s] ( 895/1167) spt-runtime manifest::tests::digest_section_validation_errors test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.6877293Z PASS [ 0.055s] ( 896/1167) spt-runtime manifest::tests::fetcher_strategy_requires_fetcher_field test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.6935101Z PASS [ 0.058s] ( 897/1167) spt-runtime manifest::tests::harness_fixture_parses_all_sections test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.6946627Z PASS [ 0.056s] ( 898/1167) spt-runtime manifest::tests::harness_kind_with_shell_section_fails_validation test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.7054411Z PASS [ 0.057s] ( 899/1167) spt-runtime manifest::tests::host_binaries_optional_and_n1_safe test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.7067351Z PASS [ 0.056s] ( 900/1167) spt-runtime manifest::tests::inject_env_without_value_fails_validation test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.7072694Z PASS [ 0.066s] ( 901/1167) spt-runtime manifest::tests::hint_keyword_matching test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.7100252Z PASS [ 0.092s] ( 902/1167) spt-runtime manifest::tests::checked_in_schema_is_current test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.7132250Z PASS [ 0.056s] ( 903/1167) spt-runtime manifest::tests::message_idle_translation_binary_opt_in test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.7151838Z PASS [ 0.061s] ( 904/1167) spt-runtime manifest::tests::manifest_schema_shape test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.7161938Z PASS [ 0.056s] ( 905/1167) spt-runtime manifest::tests::minimal_header_only_manifest_is_valid test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.7215876Z PASS [ 0.054s] ( 906/1167) spt-runtime manifest::tests::per_capability_act_gate_parses_and_validates test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.7272136Z PASS [ 0.046s] ( 907/1167) spt-runtime manifest::tests::profile_overlays_hints_wholesale test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.7291847Z PASS [ 0.045s] ( 908/1167) spt-runtime manifest::tests::round_trips_through_toml test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.7328370Z PASS [ 0.045s] ( 909/1167) spt-runtime manifest::tests::session_resume_role_parses_roundtrips_and_is_backcompat test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.7345859Z PASS [ 0.041s] ( 910/1167) spt-runtime manifest::tests::shell_fixture_parses test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.7372586Z PASS [ 0.043s] ( 911/1167) spt-runtime manifest::tests::shell_kind_without_shell_section_fails_validation test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.7408363Z PASS [ 0.037s] ( 912/1167) spt-runtime manifest::tests::shell_tunnel_opt_in test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.7468351Z PASS [ 0.040s] ( 913/1167) spt-runtime manifest::tests::shortcut_basename_optional_with_default test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.7471216Z PASS [ 0.040s] ( 914/1167) spt-runtime manifest::tests::syntactically_broken_toml_is_an_error_not_a_panic test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.7510237Z PASS [ 0.041s] ( 915/1167) spt-runtime manifest::tests::unknown_enum_variant_is_an_error_not_a_panic test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.7540781Z PASS [ 0.041s] ( 916/1167) spt-runtime manifest::tests::update_avenue_content_signing_fields test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.7567270Z PASS [ 0.042s] ( 917/1167) spt-runtime manifest::tests::update_avenue_gh_release_fields test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.7595314Z PASS [ 0.043s] ( 918/1167) spt-runtime profile::tests::deep_nested_leaf_replace test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.7628275Z PASS [ 0.041s] ( 919/1167) spt-runtime profile::tests::file_pointer_recognized_only_for_single_file_key_table test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.7668977Z PASS [ 0.040s] ( 920/1167) spt-runtime profile::tests::leaf_replace_contract test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.7690072Z PASS [ 0.040s] ( 921/1167) spt-runtime profile::tests::profile_overlays_strings test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.7716670Z PASS [ 0.039s] ( 922/1167) spt-runtime profile::tests::resolve_shipped_profile_applies_overlay test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.7743018Z PASS [ 0.040s] ( 923/1167) spt-runtime profile::tests::resolve_unknown_profile_errors test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.7773056Z PASS [ 0.040s] ( 924/1167) spt-runtime profile::tests::split_option_first_colon test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.7846680Z PASS [ 0.044s] ( 925/1167) spt-runtime profile::tests::string_dot_path_read_write test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.7880510Z PASS [ 0.041s] ( 926/1167) spt-runtime profile::tests::tighten_only_allows_tightening test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.7909480Z PASS [ 0.044s] ( 927/1167) spt-runtime profile::tests::tighten_only_refuses_loosened_over_cap test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.7936627Z PASS [ 0.043s] ( 928/1167) spt-runtime profile::tests::tighten_only_refuses_loosened_require_approval test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.8249586Z PASS [ 0.070s] ( 929/1167) spt-runtime registry::tests::create_local_profile_guards test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.8345493Z PASS [ 0.065s] ( 930/1167) spt-runtime registry::tests::invalid_manifest_records_nothing test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.8351757Z PASS [ 0.077s] ( 931/1167) spt-runtime registry::tests::cross_adapter_fallback_target_resolves_adapter_and_profile test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.8358488Z PASS [ 0.076s] ( 932/1167) spt-runtime registry::tests::delete_local_profile_rules test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.8555723Z PASS [ 0.078s] ( 933/1167) spt-runtime registry::tests::missing_string_file_skips_at_read_without_error test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.8569891Z PASS [ 0.089s] ( 934/1167) spt-runtime registry::tests::file_backed_string_reads_contents_lazily test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.8575506Z PASS [ 0.094s] ( 935/1167) spt-runtime registry::tests::deregister_is_soft_and_readd_reactivates test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.8629792Z PASS [ 0.078s] ( 936/1167) spt-runtime registry::tests::pointer_missing_manifest_is_deferred_not_cryptic test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.8638781Z PASS [ 0.092s] ( 937/1167) spt-runtime registry::tests::local_profile_overrides_a_shipped_file_pointer test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.8687018Z PASS [ 0.080s] ( 938/1167) spt-runtime registry::tests::register_copy_vs_pointer_by_avenue test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.8697520Z PASS [ 0.095s] ( 939/1167) spt-runtime registry::tests::local_profile_survives_readd test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.8737632Z PASS [ 0.083s] ( 940/1167) spt-runtime registry::tests::resolve_option_bare_shipped_and_local test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.8743571Z PASS [ 0.081s] ( 941/1167) spt-runtime registry::tests::resolve_option_in_matches_disk test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.8754900Z PASS [ 0.019s] ( 942/1167) spt-runtime resolve::tests::normalize_folds_case_and_stems_first_dot test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.8760730Z PASS [ 0.051s] ( 943/1167) spt-runtime registry::tests::string_file_pointer_escaping_the_dir_is_refused_at_register test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.8857150Z PASS [ 0.049s] ( 944/1167) spt-runtime resolve::tests::no_candidate_when_no_adapter_hosts_binary test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.8912165Z PASS [ 0.034s] ( 945/1167) spt-runtime resolve::tests::pointer_is_sibling_to_adapter_dirs test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.8947493Z PASS [ 0.032s] ( 946/1167) spt-runtime resolve::tests::renamed_in_use_exe_still_resolves test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.9006223Z PASS [ 0.066s] ( 947/1167) spt-runtime registry::tests::strings_get_set_through_overlay test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.9071764Z PASS [ 0.038s] ( 948/1167) spt-runtime resolve::tests::single_candidate_resolves_base_no_pointer test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.9127641Z PASS [ 0.038s] ( 949/1167) spt-runtime runtime::tests::fills_known_placeholders test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.9136531Z PASS [ 0.038s] ( 950/1167) spt-runtime runtime::tests::literal_braces_still_escape_per_token test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.9155377Z PASS [ 0.030s] ( 951/1167) spt-runtime runtime::tests::missing_key_and_empty_command_errors_still_fire test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.9160117Z PASS [ 0.059s] ( 952/1167) spt-runtime resolve::tests::pointer_overrides_fallback test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.9220049Z PASS [ 0.031s] ( 953/1167) spt-runtime runtime::tests::missing_key_errors_before_spawn test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.9230988Z PASS [ 0.089s] ( 954/1167) spt-runtime resolve::tests::fallback_picks_freshest_then_name test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.9245462Z PASS [ 0.030s] ( 955/1167) spt-runtime runtime::tests::multiword_value_is_one_argv_element test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.9263567Z PASS [ 11.312s] ( 956/1167) spt-live signoff::tests::boundary_writes_resume_commune test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.9275697Z PASS [ 0.028s] ( 957/1167) spt-runtime runtime::tests::placeholder_inside_larger_token_substitutes_in_place test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.9311851Z PASS [ 0.024s] ( 958/1167) spt-runtime runtime::tests::quote_and_semicolon_values_stay_one_element test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.9335312Z PASS [ 0.064s] ( 959/1167) spt-runtime resolve::tests::stale_pointer_self_heals_to_fallback test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.9364800Z PASS [ 0.023s] ( 960/1167) spt-runtime runtime::tests::resolve_program_adds_exe_suffix_on_windows test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.9393866Z PASS [ 0.026s] ( 961/1167) spt-runtime runtime::tests::resolve_program_falls_back_to_path test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.9423356Z PASS [ 0.027s] ( 962/1167) spt-runtime runtime::tests::resolve_program_prefers_install_dir test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.9426800Z PASS [ 0.079s] ( 963/1167) spt-runtime resolve::tests::set_clear_prune_rules test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.9485537Z PASS [ 0.027s] ( 964/1167) spt-runtime runtime::tests::tokenize_honors_double_quotes test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.9524209Z PASS [ 0.029s] ( 965/1167) spt-runtime runtime::tests::unknown_role_errors test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.9545106Z PASS [ 0.018s] ( 966/1167) spt-store access::tests::users_reservation_decodes_inert test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.9553993Z PASS [ 0.082s] ( 967/1167) spt-runtime runtime::tests::bounded_run_captures_success test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.9569678Z PASS [ 0.032s] ( 968/1167) spt-store access::tests::allow_revoke_open_polarity test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.9589958Z PASS [ 0.033s] ( 969/1167) spt-store access::tests::recent_outbound_correlates_within_window test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.9678192Z PASS [ 0.040s] ( 970/1167) spt-store access::tests::recent_outbound_is_bounded test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.9751119Z PASS [ 0.044s] ( 971/1167) spt-store access::tests::recent_outbound_persists test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.9841308Z PASS [ 0.050s] ( 972/1167) spt-store access::tests::store_persists_and_degrades_open test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.9884993Z PASS [ 0.049s] ( 973/1167) spt-store atomic::tests::atomic_write_bytes_round_trips test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.9895791Z PASS [ 0.047s] ( 974/1167) spt-store atomic::tests::retry_absorbs_transient_then_succeeds test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.9936008Z PASS [ 0.045s] ( 975/1167) spt-store atomic::tests::retry_does_not_retry_non_transient test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:15.9958256Z PASS [ 0.043s] ( 976/1167) spt-store atomic::tests::retry_gives_up_after_max_attempts test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:16.0000775Z PASS [ 0.045s] ( 977/1167) spt-store atomic::tests::to_forward_slash_strips_unc_prefix test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:16.0002262Z PASS [ 0.058s] ( 978/1167) spt-store atomic::tests::atomic_write_creates_and_replaces test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:16.0048913Z PASS [ 0.088s] ( 979/1167) spt-runtime runtime::tests::spawn_session_detached_returns_pid test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:16.0082623Z PASS [ 0.051s] ( 980/1167) spt-store attachment::tests::boot_reset_and_serving_filter test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:16.0117244Z PASS [ 0.056s] ( 981/1167) spt-store attachment::tests::attached_default_flip_roundtrip test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:16.0190533Z PASS [ 0.060s] ( 982/1167) spt-store attachment::tests::corrupt_file_degrades_to_attached test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:16.0430851Z PASS [ 0.041s] ( 983/1167) spt-store contextmark::tests::join_bump_dominates_both_parents test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:16.0523198Z PASS [ 0.050s] ( 984/1167) spt-store contextmark::tests::marker_round_trips_v1_and_v2 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:16.0601666Z PASS [ 0.051s] ( 985/1167) spt-store contextmark::tests::merge_decisions test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:16.0602373Z PASS [ 0.049s] ( 986/1167) spt-store contextmark::tests::vector_compare_covers_all_orders test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:16.0602890Z PASS [ 0.047s] ( 987/1167) spt-store contextmark::tests::vector_parse_tolerant test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:16.3522410Z PASS [ 0.297s] ( 988/1167) spt-store contextstore::tests::invalid_id_refused test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:16.4474452Z LEAK [ 0.571s] ( 989/1167) spt-runtime runtime::tests::bounded_run_kills_on_timeout test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:20.2506729Z PASS [ 4.261s] ( 990/1167) spt-store branchstore::tests::open_or_init_idempotent test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:22.1721700Z PASS [ 5.726s] ( 991/1167) spt-store epoch::tests::corrupt_or_absent_file_degrades_safely test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:22.2868450Z PASS [ 2.033s] ( 992/1167) spt-store epoch::tests::counter_persists_across_reload test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:22.3149113Z PASS [ 0.143s] ( 993/1167) spt-store epoch::tests::next_is_strictly_increasing_from_one test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:22.3293515Z PASS [ 0.045s] ( 994/1167) spt-store gitrun::tests::deadline_kills_and_reports_timed_out test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:22.3509360Z PASS [ 0.020s] ( 995/1167) spt-store grants::tests::grant_match_is_exact_per_tuple test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:22.3630063Z PASS [ 0.013s] ( 996/1167) spt-store grants::tests::grant_revoke_roundtrip_default_deny test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:22.3917905Z PASS [ 0.077s] ( 997/1167) spt-store gitrun::tests::version_runs_within_budget test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:22.9858682Z PASS [ 0.594s] ( 998/1167) spt-store history::tests::appends_one_record_per_line test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:23.0005244Z PASS [ 0.637s] ( 999/1167) spt-store grants::tests::persistence_and_corrupt_degrade_to_deny test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:23.0374928Z PASS [ 0.051s] (1000/1167) spt-store history::tests::context_entries_carry_the_discriminator test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:23.0455318Z PASS [ 0.045s] (1001/1167) spt-store history::tests::digest_entries_go_to_a_separate_log test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:23.0710090Z PASS [ 0.026s] (1002/1167) spt-store home::tests::home_assignment_matrix test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:23.0899135Z PASS [ 0.018s] (1003/1167) spt-store home::tests::scope_seeding_never_clobbers_user_policy test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:23.0965779Z PASS [ 0.060s] (1004/1167) spt-store home::tests::adoption_stamps_only_unset_and_only_when_unambiguous test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:23.1054661Z PASS [ 0.016s] (1005/1167) spt-store home::tests::stamp_creation_fields_news_assign_and_revives_carry_forward test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:23.1156195Z PASS [ 0.019s] (1006/1167) spt-store hostlabel::tests::hostname_is_nonempty_and_trimmed_on_supported_platforms test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:23.1306922Z PASS [ 0.025s] (1007/1167) spt-store info::tests::busy_sentinel_round_trips_and_read_pid_is_none test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:23.1674914Z PASS [ 0.037s] (1008/1167) spt-store info::tests::controllable_is_additive_and_round_trips test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:23.2248664Z PASS [ 0.057s] (1009/1167) spt-store info::tests::corrupt_content_returns_none test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:23.3041467Z PASS [ 7.304s] (1010/1167) spt-store branchstore::tests::sweep_removes_only_stale_empty_locks test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:23.3567986Z PASS [ 0.059s] (1011/1167) spt-store info::tests::psyche_host_error_round_trips_and_set_clear_increments test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:23.4067093Z PASS [ 0.042s] (1012/1167) spt-store info::tests::read_pid_tolerates_schema_minimal test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:23.4645453Z PASS [ 0.062s] (1013/1167) spt-store info::tests::set_driven_by_stamps_and_clears test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:23.4648765Z PASS [ 0.239s] (1014/1167) spt-store info::tests::mutate_info_serializes_writers_so_offline_is_never_clobbered test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:23.5130091Z PASS [ 0.043s] (1015/1167) spt-store info::tests::set_resources_writes_and_clears_the_blurb test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:23.5169157Z PASS [ 0.050s] (1016/1167) spt-store info::tests::set_last_active_stamps_recency test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:23.6202343Z PASS [ 0.096s] (1017/1167) spt-store info::tests::set_status_marks_existing_record test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:23.6393880Z PASS [ 0.125s] (1018/1167) spt-store info::tests::set_rest_state_stamps_state_and_anchor_as_a_pair test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:23.6506235Z PASS [ 0.042s] (1019/1167) spt-store info::tests::write_read_round_trip test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:23.6861182Z PASS [ 0.049s] (1020/1167) spt-store liveness::tests::busy_and_missing_keep_interim_parity test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:23.9661075Z PASS [ 0.317s] (1021/1167) spt-store liveness::tests::daemon_hosted_offline_overrides_live_pid test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:23.9994801Z PASS [ 0.313s] (1022/1167) spt-store liveness::tests::daemon_hosted_online_survives_dead_pid test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:24.0534288Z PASS [ 0.076s] (1023/1167) spt-store liveness::tests::external_perch_still_pid_probes test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:24.0777674Z PASS [ 0.034s] (1024/1167) spt-store nodeid::tests::corrupt_key_errors_never_regenerates test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:24.0845984Z PASS [ 0.087s] (1025/1167) spt-store liveness::tests::registry_entry_keys_on_status_for_hosted_rows test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:24.1091918Z PASS [ 0.030s] (1026/1167) spt-store nodeid::tests::create_then_load_is_stable test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:24.1223631Z PASS [ 0.040s] (1027/1167) spt-store nodeid::tests::seed_hex_round_trips test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:24.2385304Z PASS [ 0.124s] (1028/1167) spt-store notif::tests::listing_is_subnet_scoped test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:24.2581217Z PASS [ 8.289s] (1029/1167) spt-store branchstore::tests::branches_are_independent_roots test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:24.3366007Z PASS [ 0.208s] (1030/1167) spt-store notif::tests::merge_is_idempotent_and_commutative test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:24.3549291Z PASS [ 0.113s] (1031/1167) spt-store notif::tests::produce_list_dismiss_round_trip test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:24.3617755Z PASS [ 0.028s] (1032/1167) spt-store notif::tests::row_serde_round_trips_with_forward_compat test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:24.3997312Z PASS [ 0.143s] (1033/1167) spt-store notif::tests::reopen_is_durable_and_corrupt_seen_degrades test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:24.4398485Z PASS [ 8.445s] (1034/1167) spt-store branchstore::tests::multi_key_commit_is_one_commit test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:24.4511745Z PASS [ 0.049s] (1035/1167) spt-store peeraddrs::tests::corrupt_file_degrades_to_empty test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:24.4686010Z PASS [ 0.101s] (1036/1167) spt-store notif::tests::stale_undismissed_copy_cannot_undismiss test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:24.4686797Z PASS [ 8.405s] (1037/1167) spt-store contextstore::tests::project_branch_holds_many_agents test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:24.4728361Z PASS [ 0.039s] (1038/1167) spt-store peeraddrs::tests::put_get_roundtrip_and_noop_reput test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:24.4761416Z PASS [ 0.129s] (1039/1167) spt-store notif::tests::seen_unions_and_surfaced_maxes test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:24.4829544Z PASS [ 0.024s] (1040/1167) spt-store perch::tests::child_files_route_through_one_resolver test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:24.4946316Z PASS [ 0.029s] (1041/1167) spt-store perch::tests::classification_matrix test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:24.4951273Z PASS [ 0.042s] (1042/1167) spt-store peeraddrs::tests::record_is_one_step_and_skips_noops test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:24.5215140Z PASS [ 0.037s] (1043/1167) spt-store perch::tests::explicit_parent_wins_over_infer test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:24.5286216Z PASS [ 0.039s] (1044/1167) spt-store perch::tests::resolve_self_is_flat test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:24.5373541Z PASS [ 0.063s] (1045/1167) spt-store perch::tests::list_self_perch_ids_enumerates_bound_top_level test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:24.5391267Z PASS [ 0.047s] (1046/1167) spt-store perch::tests::shell_perches_resolve_under_owner_shells_namespace test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:24.5394046Z PASS [ 0.057s] (1047/1167) spt-store perch::tests::resolve_psyche_and_worker_nest_under_parent test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:24.5641709Z PASS [ 0.031s] (1048/1167) spt-store proc::tests::current_process_is_alive test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:24.5717909Z PASS [ 0.050s] (1049/1167) spt-store perch::tests::spt_home_is_pure_and_honors_env test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:24.5718536Z PASS [ 0.027s] (1050/1167) spt-store proc::tests::exe_basename_dead_pid_is_none test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:24.5800728Z PASS [ 0.027s] (1051/1167) spt-store proc::tests::exe_basename_resolves_current_process test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:24.5825376Z PASS [ 0.034s] (1052/1167) spt-store proc::tests::parent_pid_resolves_and_is_alive test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:24.6119837Z PASS [ 8.616s] (1053/1167) spt-store branchstore::tests::unchanged_write_is_no_commit test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:24.6898166Z PASS [ 0.126s] (1054/1167) spt-store proc::tests::unassigned_pid_is_dead test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:24.6952870Z PASS [ 0.130s] (1055/1167) spt-store proc::tests::pid_zero_is_dead_on_every_os test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:24.7019457Z PASS [ 0.123s] (1056/1167) spt-store project::tests::url_spellings_normalize_to_one_id test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:24.7070495Z PASS [ 0.138s] (1057/1167) spt-store proc::tests::process_cmdline_reads_a_live_arg_marker test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:24.7881652Z PASS [ 8.803s] (1058/1167) spt-store branchstore::tests::commit_then_read_at_tip test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:24.8274712Z PASS [ 0.128s] (1059/1167) spt-store registry::tests::register_on_nonexistent_owlery_creates_dir_and_succeeds test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:24.8344055Z PASS [ 0.138s] (1060/1167) spt-store registry::tests::register_and_lookup test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:24.9133037Z PASS [ 0.222s] (1061/1167) spt-store registry::tests::clean_removes_dead_keeps_live test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:24.9177382Z PASS [ 0.306s] (1062/1167) spt-store registry::tests::clean_keys_on_status_for_daemon_hosted_rows test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:24.9659040Z PASS [ 0.174s] (1063/1167) spt-store registry::tests::reregister_replaces_address test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:24.9665331Z PASS [ 0.127s] (1064/1167) spt-store registry::tests::resolve_on_empty_registry_is_none_not_error test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:24.9667949Z PASS [ 0.051s] (1065/1167) spt-store rename::tests::live_nested_child_blocks_rename test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:24.9781695Z PASS [ 0.054s] (1066/1167) spt-store rename::tests::rename_refusals_leave_owlery_untouched test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:24.9896395Z PASS [ 0.028s] (1067/1167) spt-store roster::tests::is_member_any_spans_subnets_and_honors_tombstones test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:24.9959060Z PASS [ 0.024s] (1068/1167) spt-store roster::tests::merge_is_commutative_and_idempotent test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:24.9972449Z PASS [ 0.034s] (1069/1167) spt-store roster::tests::merge_entry_is_strictly_greater_lease_wins test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:25.0052839Z PASS [ 0.009s] (1070/1167) spt-store roster::tests::roster_for_projects_one_subnets_slice test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:25.0184690Z PASS [ 0.028s] (1071/1167) spt-store roster::tests::offline_member_persists_through_silence_and_reload test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:25.0229306Z PASS [ 0.196s] (1072/1167) spt-store registry::tests::resolve_cleans_before_lookup test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:25.0359998Z PASS [ 0.037s] (1073/1167) spt-store roster::tests::serde_additive_and_degrades_to_empty test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:25.0370639Z PASS [ 0.029s] (1074/1167) spt-store roster::tests::tombstone_dominates_suppresses_reinsert_and_clears test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:25.0394541Z PASS [ 0.016s] (1075/1167) spt-store roster::tests::upsert_self_overwrites_unconditionally test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:25.0396566Z PASS [ 0.022s] (1076/1167) spt-store roster::tests::tombstones_are_scoped_and_merge test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:25.0463587Z PASS [ 0.081s] (1077/1167) spt-store rename::tests::rename_ripples_self_and_nested_children test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:25.0633609Z PASS [ 0.029s] (1078/1167) spt-store rotation::tests::coalesce_unions_revokees_and_keeps_earliest_deadline test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:25.0695854Z PASS [ 0.031s] (1079/1167) spt-store rotation::tests::coalesce_is_per_subnet test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:25.0739710Z PASS [ 0.032s] (1080/1167) spt-store rotation::tests::due_subnets_respects_deadline_and_force_is_immediate test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:25.0802442Z PASS [ 0.037s] (1081/1167) spt-store seed::tests::absent_cwd_is_omitted test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:25.0831467Z PASS [ 0.041s] (1082/1167) spt-store rotation::tests::persists_and_degrades_to_empty test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:25.0866569Z PASS [ 0.023s] (1083/1167) spt-store seed::tests::seed_round_trips_through_json test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:25.1057219Z PASS [ 0.022s] (1084/1167) spt-store sessions::tests::none_cwd_emits_no_field_and_roundtrips test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:25.1118499Z PASS [ 0.031s] (1085/1167) spt-store sessions::tests::pre_migration_row_without_cwd_deserializes_as_none test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:25.1182379Z PASS [ 0.050s] (1086/1167) spt-store sessions::tests::appends_and_reads_in_order test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:25.1236635Z PASS [ 0.032s] (1087/1167) spt-store sessions::tests::row_with_cwd_appends_and_reads_back test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:25.1438016Z PASS [ 0.040s] (1088/1167) spt-store sessions::tests::same_session_rebind_is_deduped test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:25.1616246Z PASS [ 0.044s] (1089/1167) spt-store sessions::tests::tolerant_of_garbage_lines test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:25.1746728Z PASS [ 0.055s] (1090/1167) spt-store shellinfo::tests::composite_option_mints_colon_free_id_and_carries_the_composite test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:28.7343821Z PASS [ 5.617s] (1091/1167) spt-store info::tests::concurrent_read_during_writes_never_torn test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:28.7366587Z PASS [ 3.619s] (1092/1167) spt-store shellinfo::tests::alias_unique_rename_and_resolution test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:28.7563055Z PASS [ 3.613s] (1093/1167) spt-store shellinfo::tests::mint_smallest_free_and_teardown_frees test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:28.7572225Z PASS [ 3.602s] (1094/1167) spt-store shellinfo::tests::shellinfo_roundtrip_and_corrupt_tolerance test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:28.7902657Z PASS [ 4.100s] (1095/1167) spt-store registry::tests::concurrent_registration_never_locks test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:28.8474322Z PASS [ 4.282s] (1096/1167) spt-store project::tests::derivation_ladder test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:28.9153503Z PASS [ 0.126s] (1097/1167) spt-store spool::tests::spool_touches_has_messages_sentinel test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:28.9422220Z PASS [ 0.185s] (1098/1167) spt-store spool::tests::reopen_is_idempotent test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:28.9514073Z PASS [ 0.009s] (1099/1167) spt-store subnet::tests::add_joined_preserves_seed_and_epoch test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:28.9622538Z PASS [ 3.788s] (1100/1167) spt-store spool::tests::deferred_row_survives_event_drain_then_hook_delivers test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:28.9670559Z PASS [ 0.235s] (1101/1167) spt-store spool::tests::drain_marks_delivered_and_is_idempotent test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:28.9764921Z PASS [ 0.129s] (1102/1167) spt-store spool::tests::wan_mark_seen_claims_once_and_blocks_spool_path test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:28.9765693Z PASS [ 0.025s] (1103/1167) spt-store subnet::tests::adopt_rotation_takes_newer_seed_and_is_idempotent test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:28.9844114Z PASS [ 0.021s] (1104/1167) spt-store subnet::tests::create_subnet_starts_at_epoch_one_unique_name test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:28.9861263Z PASS [ 0.019s] (1105/1167) spt-store subnet::tests::hex_round_trips_and_rejects_bad_input test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:28.9964300Z PASS [ 0.020s] (1106/1167) spt-store subnet::tests::minted_seeds_are_random test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:28.9991227Z PASS [ 0.023s] (1107/1167) spt-store subnet::tests::hide_new_endpoints_defaults_off_and_persists test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:28.9997782Z PASS [ 0.016s] (1108/1167) spt-store subnet::tests::missing_or_corrupt_file_is_empty_store test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:29.0003870Z PASS [ 0.014s] (1109/1167) spt-store subnet::tests::no_prior_generation_before_rotation test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:29.0155426Z PASS [ 0.016s] (1110/1167) spt-store subnet::tests::remove_drops_membership test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:29.0191419Z PASS [ 0.261s] (1111/1167) spt-store spool::tests::non_deferred_drain_skips_deferred_and_preserves_order test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:29.0215694Z PASS [ 0.022s] (1112/1167) spt-store subnet::tests::rotate_bumps_epoch_and_changes_seed test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:29.0326866Z PASS [ 0.032s] (1113/1167) spt-store subnet::tests::store_persists_multi_subnet_and_rotation test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:29.0822516Z PASS [ 0.167s] (1114/1167) spt-store spool::tests::wan_spool_dedups_on_op_id_across_reopen test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:29.2128784Z PASS [ 26.792s] (1115/1167) spt-daemon::sync two_tier_sync_lands_and_gate_refuses_server_side test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:29.2446917Z PASS [ 0.506s] (1116/1167) spt-store spool::tests::event_part_body_persists_byte_exact test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:29.2658071Z PASS [ 0.021s] (1117/1167) spt-store timefmt::tests::formats_known_instants test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:29.2849854Z PASS [ 0.019s] (1118/1167) spt-store timefmt::tests::lexical_order_matches_chronological_order test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:29.2939454Z PASS [ 0.263s] (1119/1167) spt-store syncmerge::tests::non_context_branch_refused test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:29.3007843Z PASS [ 0.019s] (1120/1167) spt-store visibility::tests::hidden_gates_sync_even_when_listed test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:29.3013191Z PASS [ 4.229s] (1121/1167) spt-store sessions::tests::last_k_and_bounding test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:29.3147570Z PASS [ 12.967s] (1122/1167) spt-store contextstore::tests::two_tier_layout_and_commits test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:29.3194864Z PASS [ 0.025s] (1123/1167) spt-store visibility::tests::hidden_is_or_of_defaults test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:29.3264881Z PASS [ 0.024s] (1124/1167) spt-store visibility::tests::override_wins_both_directions test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:29.3403052Z PASS [ 0.025s] (1125/1167) spt-store visibility::tests::synced_requires_membership_listing test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:29.3488157Z PASS [ 0.045s] (1126/1167) spt-store visibility::tests::store_persists_and_degrades_safe test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:29.3568555Z PASS [ 0.038s] (1127/1167) spt-store xfer::tests::progress_round_trips_per_role_and_updates_mid_flight test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:29.3628403Z PASS [ 0.035s] (1128/1167) spt-store xfer::tests::xfer_id_is_filename_safe_and_distinct test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:29.3659817Z PASS [ 0.016s] (1129/1167) spt-term digest::tests::truncate_arg_cuts_to_width_with_ellipsis test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:29.3747045Z PASS [ 0.013s] (1130/1167) spt-term projection::tests::agent_between_tools_breaks_the_sprint test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:29.3762475Z PASS [ 0.036s] (1131/1167) spt-term digest::tests::config_defaults_are_the_presentation_formula test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:29.3851512Z PASS [ 0.018s] (1132/1167) spt-term projection::tests::context_record_discriminator test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:29.3868575Z PASS [ 0.016s] (1133/1167) spt-term projection::tests::diagnostics_record_every_drop_with_reason test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:29.3912310Z PASS [ 0.026s] (1134/1167) spt-term projection::tests::diagnostics_clean_stream_has_no_drops test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:29.3967593Z PASS [ 0.018s] (1135/1167) spt-term projection::tests::empty_input_projects_empty_digest test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:29.3968475Z PASS [ 0.018s] (1136/1167) spt-term projection::tests::leading_output_without_input_is_a_preamble_turn test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:29.4067077Z PASS [ 0.017s] (1137/1167) spt-term projection::tests::malformed_unknown_role_and_toolless_tool_are_skipped test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:29.4067906Z PASS [ 0.015s] (1138/1167) spt-term projection::tests::projects_input_agent_and_collapses_tool_sprints test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:29.4111434Z PASS [ 0.017s] (1139/1167) spt-term projection::tests::sprint_collapse_off_keeps_tools_separate test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:29.4250924Z PASS [ 0.024s] (1140/1167) spt-term projection::tests::timeline_boundary_divider_and_window_bridge test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:29.4252832Z PASS [ 0.021s] (1141/1167) spt-term projection::tests::timeline_folds_context_into_a_turn test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:29.4253568Z PASS [ 0.021s] (1142/1167) spt-term projection::tests::truncates_tool_args_to_width test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:29.4255296Z PASS [ 0.014s] (1143/1167) spt-term projection::tests::ts_ordering_key_parses_and_is_optional test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:29.4379291Z PASS [ 0.013s] (1144/1167) spt-term projection::tests::unknown_fields_are_tolerated test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:29.4479428Z PASS [ 0.018s] (1145/1167) spt-term projection::tests::window_input_turns_bridges_and_trims test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:29.4481417Z PASS [ 0.020s] (1146/1167) spt-term projection::tests::windows_to_last_n_turns test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:29.4613046Z PASS [ 0.014s] (1147/1167) spt-term reader::tests::dsr_matcher_finds_query_across_chunk_boundary test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:29.4680173Z PASS [ 0.022s] (1148/1167) spt-term reader::tests::auto_answers_synthetic_dsr_query test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:29.4691307Z PASS [ 0.019s] (1149/1167) spt-term winprog::tests::bare_name_prefers_cmd_over_extensionless_shim test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:29.4692596Z PASS [ 0.020s] (1150/1167) spt-term winprog::tests::bare_name_prefers_exe_and_spawns_direct test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:29.4779288Z PASS [ 0.034s] (1151/1167) spt-term reader::tests::no_dsr_means_no_answer test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:29.4813236Z PASS [ 0.029s] (1152/1167) spt-term winprog::tests::earlier_path_dir_wins test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:29.4813998Z PASS [ 0.013s] (1153/1167) spt-term winprog::tests::explicit_extension_is_classified_in_place test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:29.4913533Z PASS [ 0.016s] (1154/1167) spt-term winprog::tests::unresolvable_passes_through test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:29.5087507Z PASS [ 0.032s] (1155/1167) xtask::bin/xtask converge_tests::converge_table_renders_rows_and_success_predicate test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:29.5180341Z PASS [ 13.499s] (1156/1167) spt-store contextstore::tests::conflict_artifacts_preserve_both_versions test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:29.6009654Z PASS [ 13.626s] (1157/1167) spt-store branchstore::tests::branches_by_recency_orders_newest_first test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:30.3802815Z PASS [ 14.321s] (1158/1167) spt-store contextstore::tests::rename_ripples_both_tiers test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:30.7398134Z PASS [ 28.389s] (1159/1167) spt-daemon::sync concurrent_writes_reconcile_on_elected_node_and_converge test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:30.8330920Z PASS [ 14.792s] (1160/1167) spt-store contextstore::tests::fork_copies_both_tiers_then_diverges test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:31.4319154Z PASS [ 15.375s] (1161/1167) spt-store contextstore::tests::remove_endpoint_removes_exactly_the_source test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:31.9119998Z PASS [ 2.891s] (1162/1167) spt-store syncmerge::tests::legacy_bottom_vectors_surface_not_overwrite test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:32.1947602Z PASS [ 3.194s] (1163/1167) spt-store syncmerge::tests::adopt_then_incremental_then_idempotent_repull test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:32.5620646Z PASS [ 3.480s] (1164/1167) spt-store syncmerge::tests::project_branch_unions_disjoint_agents test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:40.8573418Z PASS [ 11.842s] (1165/1167) spt-store syncmerge::tests::dominated_incoming_drops_but_joins_dag test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:41.1156324Z PASS [ 12.103s] (1166/1167) spt-store syncmerge::tests::concurrent_writes_surface_on_both_nodes test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:41.8617538Z PASS [ 12.649s] (1167/1167) spt-store syncmerge::tests::reconciled_write_propagates_and_clears_artifacts test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:41.8618627Z ──────────── test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:41.8618850Z Summary [ 57.239s] 1167 tests run: 1167 passed (5 leaky), 1 skipped test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:24:45.2552743Z ##[group]Run cargo nextest run --workspace --no-fail-fast -E '(package(spt-daemon) & kind(test) & binary(/^(attach|brain_swap|broker|budget|daemon_e2e|daemon_lifecycle_real_brain|digest|dispatch|driven_by_selfheal|handoff|idempotent|inject_control_wedge|input_ack_deadlock|resume|shellchan|two_origin_spanning|twohost)$/)) | (package(spt) & kind(test) & binary(/^(attach_wedge_e2e|bind_cwd_project_e2e|brain_respawn_rename|brain_restart_psyche_dup_e2e|brain_split|brain_survive|dummy_harness_e2e|gateway_owner_shell_e2e|job_escape_e2e|livehost_bootgate_e2e|livehost_bootrace_e2e|livehost_nonresident_e2e|livehost_psyche_fail_e2e|n1_pairing|oneliner_e2e|resume_template_e2e|unhost_psyche_reap_e2e)$/)) | (package(spt-term) & kind(test))' test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:24:45.2557042Z cargo nextest run --workspace --no-fail-fast -E '(package(spt-daemon) & kind(test) & binary(/^(attach|brain_swap|broker|budget|daemon_e2e|daemon_lifecycle_real_brain|digest|dispatch|driven_by_selfheal|handoff|idempotent|inject_control_wedge|input_ack_deadlock|resume|shellchan|two_origin_spanning|twohost)$/)) | (package(spt) & kind(test) & binary(/^(attach_wedge_e2e|bind_cwd_project_e2e|brain_respawn_rename|brain_restart_psyche_dup_e2e|brain_split|brain_survive|dummy_harness_e2e|gateway_owner_shell_e2e|job_escape_e2e|livehost_bootgate_e2e|livehost_bootrace_e2e|livehost_nonresident_e2e|livehost_psyche_fail_e2e|n1_pairing|oneliner_e2e|resume_template_e2e|unhost_psyche_reap_e2e)$/)) | (package(spt-term) & kind(test))' test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:24:45.2630881Z shell: C:\Program Files\PowerShell\7\pwsh.EXE -command ". '{0}'" test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:24:45.2631112Z ##[endgroup] test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:24:46.6321087Z Finished `test` profile [unoptimized + debuginfo] target(s) in 0.57s test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:25:02.9891746Z ──────────── test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:25:02.9892051Z Nextest run ID ee6a73aa-0e34-46f0-9c13-67533b8ff0d5 with nextest profile: default test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:25:02.9892361Z Starting 91 tests across 39 binaries (48 binaries skipped) test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:25:09.8246235Z PASS [ 6.835s] ( 1/91) spt::attach_wedge_e2e attach_wedge_dead_child_plus_dropped_pump_does_not_wedge_the_broker test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:25:11.7298978Z PASS [ 1.905s] ( 2/91) spt::bind_cwd_project_e2e endpoint_run_records_cwd_and_appears_under_its_project test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:25:26.2991321Z PASS [ 14.569s] ( 3/91) spt::brain_respawn_rename brain_respawns_onto_applied_bytes_after_in_place_rename test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:25:40.0068731Z PASS [ 13.708s] ( 4/91) spt::brain_restart_psyche_dup_e2e brain_restart_leaves_exactly_one_psyche_per_endpoint test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:25:47.1697715Z PASS [ 7.163s] ( 5/91) spt::brain_split broker_survives_brain_kill_and_respawns_it test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:25:54.3926014Z PASS [ 7.223s] ( 6/91) spt::brain_split seed_anchor_survives_brain_cycle test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:26:02.0834173Z PASS [ 7.691s] ( 7/91) spt::brain_survive pty_and_quic_survive_brain_process_restart_onto_swapped_binary test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:26:10.0094084Z PASS [ 7.926s] ( 8/91) spt::dummy_harness_e2e endpoint_run_attach_awaits_online_before_attaching test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:26:13.1822886Z PASS [ 3.173s] ( 9/91) spt::dummy_harness_e2e endpoint_run_brings_up_a_long_lived_dummy_harness_and_rc_attaches test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:26:13.8594886Z PASS [ 0.677s] (10/91) spt::gateway_owner_shell_e2e gateway_typed_owner_owns_a_shell_on_every_path_keyed_on_id test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:26:17.5816966Z PASS [ 3.722s] (11/91) spt::job_escape_e2e win::cold_start_daemon_escapes_kill_on_close_job_via_wmi test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:26:20.4348533Z PASS [ 2.853s] (12/91) spt::job_escape_e2e win::wmi_daemon_run_has_no_conhost_window test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:26:30.0354002Z PASS [ 9.600s] (13/91) spt::livehost_bootgate_e2e cold_start_does_not_revive_a_sessionless_online_latched_perch test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:26:51.6351202Z PASS [ 21.600s] (14/91) spt::livehost_bootrace_e2e netless_online_live_agent_is_hosted_by_the_real_daemon_brain test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:27:04.3851332Z PASS [ 12.750s] (15/91) spt::livehost_nonresident_e2e online_live_agent_with_fast_exiting_psyche_stamps_parent_and_clears_phantom test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:27:11.8308673Z PASS [ 7.446s] (16/91) spt::livehost_psyche_fail_e2e online_live_agent_with_missing_psyche_binary_stamps_a_harness_reachable_error test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:27:11.8459382Z PASS [ 0.015s] (17/91) spt::n1_pairing new_brain_serves_against_old_broker test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:27:11.8726693Z PASS [ 0.027s] (18/91) spt::oneliner_e2e at_logon_task_launches_daemon_in_background_not_foreground test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:27:11.8840174Z PASS [ 0.011s] (19/91) spt::oneliner_e2e install_script_against_staged_release test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:27:19.0471491Z PASS [ 7.163s] (20/91) spt::resume_template_e2e endpoint_run_resume_selects_resume_template_in_recorded_cwd test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:27:32.3985942Z PASS [ 13.351s] (21/91) spt::unhost_psyche_reap_e2e endpoint_stop_reaps_the_hosted_psyche_process test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:27:32.5659714Z PASS [ 0.167s] (22/91) spt-daemon::attach attach_registers_remote_drive_detection test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:27:32.7101215Z PASS [ 0.144s] (23/91) spt-daemon::attach attach_survives_target_brain_restart_exactly_once test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:27:32.7747865Z PASS [ 0.065s] (24/91) spt-daemon::attach broker_spawns_the_pty_child_in_the_requested_cwd test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:27:32.8471508Z PASS [ 0.072s] (25/91) spt-daemon::attach controller_restart_with_viewer_no_displace_and_viewer_survives test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:27:32.9043868Z PASS [ 0.057s] (26/91) spt-daemon::attach controller_viewer_matrix_and_loud_take test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:27:32.9336762Z PASS [ 0.029s] (27/91) spt-daemon::attach handoff_seeds_resume_cursor_and_resubscribes_for_resume test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:27:33.0148949Z PASS [ 0.081s] (28/91) spt-daemon::attach local_attach_via_loopback_conn_rides_the_same_pump test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:27:33.1003158Z PASS [ 0.085s] (29/91) spt-daemon::attach loopback_attach_to_a_prepopulated_ring_delivers_without_deadlock test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:27:33.1592555Z PASS [ 0.059s] (30/91) spt-daemon::attach loopback_self_dial_is_refused_local_uses_fallback_transport test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:27:33.1891557Z PASS [ 0.030s] (31/91) spt-daemon::attach re_serve_resets_resume_cursor_after_a_pre_attached_consume test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:27:33.3214855Z PASS [ 0.132s] (32/91) spt-daemon::attach remote_attach_drives_a_real_pty_cross_daemon test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:27:33.3714381Z PASS [ 0.050s] (33/91) spt-daemon::attach resize_is_controller_exclusive test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:27:33.4711950Z PASS [ 0.100s] (34/91) spt-daemon::attach same_origin_re_subscribe_does_not_displace test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:27:33.6176458Z PASS [ 0.146s] (35/91) spt-daemon::attach spt_hosted_bringup_then_cross_node_attach_drives_the_pty test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:27:36.0255447Z PASS [ 2.408s] (36/91) spt-daemon::attach wedged_viewer_does_not_stall_controller test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:27:36.0650257Z PASS [ 0.039s] (37/91) spt-daemon::brain_swap brain_only_update_swaps_logic_with_zero_endpoint_interruption test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:27:36.0976637Z PASS [ 0.033s] (38/91) spt-daemon::broker ack_false_input_suppresses_applied_frame test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:27:36.1297871Z PASS [ 0.032s] (39/91) spt-daemon::broker broker_hosts_pty_child_streams_output_and_accepts_input test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:27:36.1913984Z PASS [ 0.062s] (40/91) spt-daemon::broker controller_writer_reorder_consumer_view_stays_monotonic_and_session_live test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:27:36.2278114Z PASS [ 0.036s] (41/91) spt-daemon::broker dead_session_subscribe_does_not_hang test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:27:36.2601909Z PASS [ 0.032s] (42/91) spt-daemon::broker endpoint_keyed_inject_reaches_hosted_pty test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:27:36.3999243Z PASS [ 0.140s] (43/91) spt-daemon::broker exactly_once_preserved_on_no_ack_path test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:27:36.4388625Z PASS [ 0.039s] (44/91) spt-daemon::broker spawn_env_reaches_child test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:27:36.4847731Z PASS [ 0.046s] (45/91) spt-daemon::broker wall_b_endpoint_run_env_then_send_reaches_pty test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:27:36.4936463Z PASS [ 0.009s] (46/91) spt-daemon::budget measure_dormant_seat_budget test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:27:39.1522820Z PASS [ 2.659s] (47/91) spt-daemon::daemon_e2e daemon_hosts_lifecycle_and_survives_brain_restart test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:27:45.4870690Z PASS [ 6.335s] (48/91) spt-daemon::daemon_lifecycle_real_brain real_brain_process_hosts_the_psyche_for_an_online_live_endpoint test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:27:45.7349279Z PASS [ 0.248s] (49/91) spt-daemon::digest harness_hosted_digest_projects_and_pushes_deltas test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:27:45.7475986Z PASS [ 0.013s] (50/91) spt-daemon::dispatch classify_routes_a_node_label_feed_to_registry test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:27:45.9135612Z PASS [ 0.166s] (51/91) spt-daemon::dispatch dispatcher_applies_a_notif_feed_undriven test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:27:46.1499713Z PASS [ 0.236s] (52/91) spt-daemon::dispatch dispatcher_funnels_wan_messages_undriven test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:27:46.4005311Z PASS [ 0.250s] (53/91) spt-daemon::dispatch dispatcher_serves_a_cross_node_shell_link test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:27:46.5275417Z PASS [ 0.127s] (54/91) spt-daemon::dispatch dispatcher_serves_a_file_fetch_undriven test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:27:46.7006238Z PASS [ 0.173s] (55/91) spt-daemon::dispatch dispatcher_serves_a_remote_drive_attach_undriven test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:27:46.8961804Z PASS [ 0.195s] (56/91) spt-daemon::dispatch dispatcher_serves_a_subnet_serve_probe test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:27:49.0634593Z PASS [ 2.167s] (57/91) spt-daemon::dispatch dispatcher_serves_a_sync_pull_undriven test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:27:49.2204225Z PASS [ 0.157s] (58/91) spt-daemon::dispatch dispatcher_serves_an_update_pull_undriven test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:27:49.5337122Z PASS [ 0.313s] (59/91) spt-daemon::dispatch dispatcher_surfaces_a_remote_won_notif_at_the_winning_node test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:27:49.7524512Z PASS [ 0.219s] (60/91) spt-daemon::dispatch dispatcher_survives_an_unknown_stream test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:27:50.2651263Z PASS [ 0.513s] (61/91) spt-daemon::driven_by_selfheal gap_a_live_session_controller_by_is_ambiguous_so_reconcile_must_not_clear test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:27:50.2981251Z PASS [ 0.033s] (62/91) spt-daemon::driven_by_selfheal gap_b_sessionless_perch_reconcile_offlines_and_clears_driven_by test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:27:50.5008679Z PASS [ 0.203s] (63/91) spt-daemon::handoff brain_restart_survives_gaplessly_with_fresh_gen_start test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:27:50.5461356Z PASS [ 0.045s] (64/91) spt-daemon::idempotent pty_writes_are_exactly_once_across_brain_crashes test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:27:53.7562940Z PASS [ 3.210s] (65/91) spt-daemon::inject_control_wedge a_backed_up_controller_does_not_wedge_the_session test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:27:56.8372987Z PASS [ 3.081s] (66/91) spt-daemon::inject_control_wedge a_journaled_input_wedge_does_not_starve_a_concurrent_rc_attach test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:28:09.2925254Z PASS [ 12.455s] (67/91) spt-daemon::inject_control_wedge g1_choreography_happy_path_payload_reaches_pty_and_controller_keeps_control test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:28:09.9369781Z PASS [ 0.644s] (68/91) spt-daemon::inject_control_wedge g2_no_commit_deadline_faults_binary_and_does_not_wedge_controller_input test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:28:10.7167969Z PASS [ 0.780s] (69/91) spt-daemon::inject_control_wedge g3_content_free_ping_never_duplicates_operator_keystrokes_into_binary test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:28:11.3611611Z PASS [ 0.644s] (70/91) spt-daemon::inject_control_wedge g4_translation_child_is_reaped_no_zombie_after_session_down test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:28:11.8319385Z PASS [ 0.471s] (71/91) spt-daemon::inject_control_wedge injecting_a_large_payload_into_a_stdin_ignoring_child test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:28:58.8813436Z FAIL [ 47.049s] (72/91) spt-daemon::inject_control_wedge p0_paste_wedge_parked_write_does_not_starve_attach_or_wedge_broker test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:28:58.8814181Z stdout ─── test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:28:58.8814292Z test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:28:58.8814371Z running 1 test test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:28:58.8814702Z test p0_paste_wedge_parked_write_does_not_starve_attach_or_wedge_broker ... FAILED test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:28:58.8815003Z test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:28:58.8815068Z failures: test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:28:58.8815174Z test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:28:58.8815550Z failures: test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:28:58.8815808Z p0_paste_wedge_parked_write_does_not_starve_attach_or_wedge_broker test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:28:58.8816061Z test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:28:58.8816309Z test result: FAILED. 0 passed; 1 failed; 0 ignored; 0 measured; 9 filtered out; finished in 47.04s test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:28:58.8816641Z test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:28:58.8816740Z stderr ─── test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:28:58.8816922Z PUMP_IPC_READER: spawned test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:28:58.8817135Z PUMP_IPC_READER: spawned test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:28:58.8817331Z PUMP_IPC_READER: exited test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:28:58.8818464Z === P0 PASTE-WEDGE GATE: pumped=2178 keystroke_accepted=true concurrent_attach_subscribed=false attach_received_output=false backpressured=false backpressure_after_stop=None (fixed = subscribed+got_output+keystroke_accepted true; pre-fix: parked dispatch thread → subscribed=false / no output) === test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:28:58.8819138Z test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:28:58.8819416Z thread 'p0_paste_wedge_parked_write_does_not_starve_attach_or_wedge_broker' (109420) panicked at crates\spt-daemon\tests\inject_control_wedge.rs:1983:5: test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:28:58.8820508Z a concurrent `spt rc` attach must be SERVICED while a paste write is parked: the subscribe reply did not arrive within the watchdog — the dispatch thread is blocked on a synchronous write_input (the paste wedge, REQ-HAZARD-PTY-INPUT-WRITER-WEDGE). Post-fix the write is off the dispatch thread on the sole input-writer. test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:28:58.8821330Z note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:28:58.8821523Z test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:28:59.4115224Z PASS [ 0.530s] (73/91) spt-daemon::inject_control_wedge w5_a1_locally_driven_session_reports_controller_by_none test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:29:03.6880477Z PASS [ 4.276s] (74/91) spt-daemon::inject_control_wedge w5_a2_abandoned_remote_controller_idle_session_keeps_controller_by_some test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:29:35.7276386Z PASS [ 32.040s] (75/91) spt-daemon::input_ack_deadlock input_flood_through_serve_attach_does_not_deadlock_broker test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:29:38.1966677Z PASS [ 2.466s] (76/91) spt-daemon::resume cold_start_resumes_all_sessions_from_the_broker_cursor test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:29:42.7116448Z PASS [ 4.518s] (77/91) spt-daemon::resume resume_below_ring_floor_clamps_forward_without_gap_error test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:29:43.9989489Z PASS [ 1.287s] (78/91) spt-daemon::resume resume_mode_brain_spawning_new_sessions_delivers_each test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:29:44.3173341Z PASS [ 0.318s] (79/91) spt-daemon::shellchan hung_shell_stalls_no_other_owner test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:29:44.5262750Z PASS [ 0.209s] (80/91) spt-daemon::shellchan stdin_receipt_delivers_spooled_frames_exactly_once test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:29:44.6872900Z PASS [ 0.161s] (81/91) spt-daemon::two_origin_spanning one_source_two_consumers_spans_and_merges test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:29:44.6987929Z PASS [ 0.012s] (82/91) spt-daemon::twohost two_host_ladder_role_a test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:29:44.7077521Z PASS [ 0.009s] (83/91) spt-daemon::twohost two_host_ladder_role_b test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:29:44.7376586Z PASS [ 0.030s] (84/91) spt-term::dsr conpty_output_not_withheld_under_the_drain test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:29:44.7654718Z PASS [ 0.028s] (85/91) spt-term::dsr drain_forwards_child_output test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:29:44.8038464Z PASS [ 0.038s] (86/91) spt-term::inject ctrl_c_interrupts_the_child test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:29:44.8418105Z PASS [ 0.038s] (87/91) spt-term::inject send_line_reaches_child_and_preserves_order test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:29:45.8639240Z PASS [ 1.022s] (88/91) spt-term::stream bounded_backpressure_stalls_an_unconsumed_reader test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:29:45.8930640Z PASS [ 0.029s] (89/91) spt-term::stream delivers_every_value_under_resize test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:29:45.9109701Z PASS [ 0.018s] (90/91) spt-term::surface resize_under_load_does_not_hang_or_panic test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:29:45.9301223Z PASS [ 0.019s] (91/91) spt-term::winspawn pty_spawns_a_cmd_script_via_cmd_wrap test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:29:45.9301740Z ──────────── test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:29:45.9304478Z Summary [ 282.941s] 91 tests run: 90 passed, 1 failed, 0 skipped test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:29:45.9305057Z FAIL [ 47.049s] (72/91) spt-daemon::inject_control_wedge p0_paste_wedge_parked_write_does_not_starve_attach_or_wedge_broker test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:29:45.9336713Z error: test run failed test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T07:29:46.0013020Z ##[error]Process completed with exit code 1. test (self-hosted, Windows, hfenduleam) Post Run actions/checkout@v5 2026-06-21T07:29:46.0229800Z Post job cleanup. test (self-hosted, Windows, hfenduleam) Post Run actions/checkout@v5 2026-06-21T07:29:46.1334385Z [command]"c:\program files\git\cmd\git.exe" version test (self-hosted, Windows, hfenduleam) Post Run actions/checkout@v5 2026-06-21T07:29:46.1544844Z git version 2.43.0.windows.1 test (self-hosted, Windows, hfenduleam) Post Run actions/checkout@v5 2026-06-21T07:29:46.1579774Z Copying 'C:\Users\decid\.gitconfig' to 'C:\actions-runner\_work\_temp\fc43cf8c-04cd-4a98-9872-3e56cc8a3999\.gitconfig' test (self-hosted, Windows, hfenduleam) Post Run actions/checkout@v5 2026-06-21T07:29:46.1592485Z Temporarily overriding HOME='C:\actions-runner\_work\_temp\fc43cf8c-04cd-4a98-9872-3e56cc8a3999' before making global git config changes test (self-hosted, Windows, hfenduleam) Post Run actions/checkout@v5 2026-06-21T07:29:46.1593038Z Adding repository directory to the temporary git global config as a safe directory test (self-hosted, Windows, hfenduleam) Post Run actions/checkout@v5 2026-06-21T07:29:46.1597823Z [command]"c:\program files\git\cmd\git.exe" config --global --add safe.directory C:\actions-runner\_work\spt-core\spt-core test (self-hosted, Windows, hfenduleam) Post Run actions/checkout@v5 2026-06-21T07:29:46.1819928Z [command]"c:\program files\git\cmd\git.exe" config --local --name-only --get-regexp core\.sshCommand test (self-hosted, Windows, hfenduleam) Post Run actions/checkout@v5 2026-06-21T07:29:46.2031464Z [command]"c:\program files\git\cmd\git.exe" submodule foreach --recursive "sh -c \"git config --local --name-only --get-regexp 'core\.sshCommand' && git config --local --unset-all 'core.sshCommand' || :\"" test (self-hosted, Windows, hfenduleam) Post Run actions/checkout@v5 2026-06-21T07:29:46.5648816Z [command]"c:\program files\git\cmd\git.exe" config --local --name-only --get-regexp http\.https\:\/\/github\.com\/\.extraheader test (self-hosted, Windows, hfenduleam) Post Run actions/checkout@v5 2026-06-21T07:29:46.5852742Z http.https://github.com/.extraheader test (self-hosted, Windows, hfenduleam) Post Run actions/checkout@v5 2026-06-21T07:29:46.5879258Z [command]"c:\program files\git\cmd\git.exe" config --local --unset-all http.https://github.com/.extraheader test (self-hosted, Windows, hfenduleam) Post Run actions/checkout@v5 2026-06-21T07:29:46.6124206Z [command]"c:\program files\git\cmd\git.exe" submodule foreach --recursive "sh -c \"git config --local --name-only --get-regexp 'http\.https\:\/\/github\.com\/\.extraheader' && git config --local --unset-all 'http.https://github.com/.extraheader' || :\"" test (self-hosted, Windows, hfenduleam) Post Run actions/checkout@v5 2026-06-21T07:29:46.9854533Z [command]"c:\program files\git\cmd\git.exe" config --local --name-only --get-regexp ^includeIf\.gitdir: test (self-hosted, Windows, hfenduleam) Post Run actions/checkout@v5 2026-06-21T07:29:47.0091332Z [command]"c:\program files\git\cmd\git.exe" submodule foreach --recursive "git config --local --show-origin --name-only --get-regexp remote.origin.url" test (self-hosted, Windows, hfenduleam) Complete job 2026-06-21T07:29:47.4052223Z Cleaning up orphan processes n1-gate (self-hosted, Linux, kitsubito) Set up job 2026-06-21T07:19:15.7120626Z Current runner version: '2.335.1' n1-gate (self-hosted, Linux, kitsubito) Set up job 2026-06-21T07:19:15.7125644Z Runner name: 'kitsubito' n1-gate (self-hosted, Linux, kitsubito) Set up job 2026-06-21T07:19:15.7126181Z Runner group name: 'Default' n1-gate (self-hosted, Linux, kitsubito) Set up job 2026-06-21T07:19:15.7126820Z Machine name: 'KITSUBITO' n1-gate (self-hosted, Linux, kitsubito) Set up job 2026-06-21T07:19:15.7128719Z ##[group]GITHUB_TOKEN Permissions n1-gate (self-hosted, Linux, kitsubito) Set up job 2026-06-21T07:19:15.7130593Z Contents: read n1-gate (self-hosted, Linux, kitsubito) Set up job 2026-06-21T07:19:15.7131003Z Metadata: read n1-gate (self-hosted, Linux, kitsubito) Set up job 2026-06-21T07:19:15.7131368Z Packages: read n1-gate (self-hosted, Linux, kitsubito) Set up job 2026-06-21T07:19:15.7131730Z ##[endgroup] n1-gate (self-hosted, Linux, kitsubito) Set up job 2026-06-21T07:19:15.7133276Z Secret source: Actions n1-gate (self-hosted, Linux, kitsubito) Set up job 2026-06-21T07:19:15.7133791Z Prepare workflow directory n1-gate (self-hosted, Linux, kitsubito) Set up job 2026-06-21T07:19:15.7489004Z Prepare all required actions n1-gate (self-hosted, Linux, kitsubito) Set up job 2026-06-21T07:19:15.7517923Z Getting action download info n1-gate (self-hosted, Linux, kitsubito) Set up job 2026-06-21T07:19:16.0362462Z Download action repository 'actions/checkout@v5' (SHA:93cb6efe18208431cddfb8368fd83d5badbf9bfd) n1-gate (self-hosted, Linux, kitsubito) Set up job 2026-06-21T07:19:16.5943852Z Complete job name: n1-gate (self-hosted, Linux, kitsubito) n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:19:16.6785415Z ##[group]Run actions/checkout@v5 n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:19:16.6786181Z with: n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:19:16.6786539Z fetch-depth: 0 n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:19:16.6786958Z repository: SaberMage/spt-core n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:19:16.6790156Z token: *** n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:19:16.6790513Z ssh-strict: true n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:19:16.6790873Z ssh-user: git n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:19:16.6791230Z persist-credentials: true n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:19:16.6791627Z clean: true n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:19:16.6791989Z sparse-checkout-cone-mode: true n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:19:16.6792399Z fetch-tags: false n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:19:16.6792752Z show-progress: true n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:19:16.6793114Z lfs: false n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:19:16.6793442Z submodules: false n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:19:16.6793797Z set-safe-directory: true n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:19:16.6794378Z ##[endgroup] n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:19:16.7621405Z Syncing repository: SaberMage/spt-core n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:19:16.7622909Z ##[group]Getting Git version info n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:19:16.7623582Z Working directory is '/home/reavus/actions-runner/_work/spt-core/spt-core' n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:19:16.7624531Z [command]/usr/bin/git version n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:19:16.7649744Z git version 2.43.0 n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:19:16.7667411Z ##[endgroup] n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:19:16.7678344Z Temporarily overriding HOME='/home/reavus/actions-runner/_work/_temp/21af2d42-d90b-4759-9f0f-705b84204a56' before making global git config changes n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:19:16.7681278Z Adding repository directory to the temporary git global config as a safe directory n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:19:16.7682265Z [command]/usr/bin/git config --global --add safe.directory /home/reavus/actions-runner/_work/spt-core/spt-core n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:19:16.7711356Z [command]/usr/bin/git config --local --get remote.origin.url n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:19:16.7731450Z https://github.com/SaberMage/spt-core n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:19:16.7742167Z ##[group]Removing previously created refs, to avoid conflicts n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:19:16.7744824Z [command]/usr/bin/git rev-parse --symbolic-full-name --verify --quiet HEAD n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:19:16.7763893Z HEAD n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:19:16.7795207Z ##[endgroup] n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:19:16.7796095Z [command]/usr/bin/git submodule status n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:19:16.7975129Z ##[group]Cleaning the repository n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:19:16.7978260Z [command]/usr/bin/git clean -ffdx n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:19:16.8005718Z Removing traceable-reqs n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:19:16.8011685Z [command]/usr/bin/git reset --hard HEAD n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:19:16.8074551Z HEAD is now at 62ed01167 Merge 77378b113f546c0fb9baed3bf6bd82525a0bb28f into 86f20ac831033a20bd5e096b1c318a75249179f3 n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:19:16.8079610Z ##[endgroup] n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:19:16.8081242Z ##[group]Disabling automatic garbage collection n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:19:16.8084124Z [command]/usr/bin/git config --local gc.auto 0 n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:19:16.8108466Z ##[endgroup] n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:19:16.8109153Z ##[group]Setting up auth n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:19:16.8113814Z [command]/usr/bin/git config --local --name-only --get-regexp core\.sshCommand n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:19:16.8139399Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'core\.sshCommand' && git config --local --unset-all 'core.sshCommand' || :" n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:19:16.8327976Z [command]/usr/bin/git config --local --name-only --get-regexp http\.https\:\/\/github\.com\/\.extraheader n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:19:16.8352642Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'http\.https\:\/\/github\.com\/\.extraheader' && git config --local --unset-all 'http.https://github.com/.extraheader' || :" n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:19:16.8540743Z [command]/usr/bin/git config --local --name-only --get-regexp ^includeIf\.gitdir: n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:19:16.8564550Z [command]/usr/bin/git submodule foreach --recursive git config --local --show-origin --name-only --get-regexp remote.origin.url n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:19:16.8756965Z [command]/usr/bin/git config --local http.https://github.com/.extraheader AUTHORIZATION: basic *** n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:19:16.8788451Z ##[endgroup] n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:19:16.8789227Z ##[group]Fetching the repository n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:19:16.8795915Z [command]/usr/bin/git -c protocol.version=2 fetch --prune --no-recurse-submodules --unshallow origin +refs/heads/*:refs/remotes/origin/* +refs/tags/*:refs/tags/* +62ed01167c9aa4bf0fe4930e6f0f9d7cfa297b3f:refs/remotes/pull/27/merge n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:19:17.6803581Z From https://github.com/SaberMage/spt-core n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:19:17.6805087Z 18416fd8a..71378d895 v0.13.0-p1b-ack-deadlock -> origin/v0.13.0-p1b-ack-deadlock n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:19:17.6806280Z * [new branch] wedge-trace-instrumentation -> origin/wedge-trace-instrumentation n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:19:17.6807250Z * [new branch] wedge-trace-v2 -> origin/wedge-trace-v2 n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:19:17.6808080Z * [new branch] wedge-trace-v3 -> origin/wedge-trace-v3 n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:19:17.6808766Z * [new branch] wedge-trace-v4 -> origin/wedge-trace-v4 n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:19:17.6838219Z ##[endgroup] n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:19:17.6839203Z ##[group]Determining the checkout info n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:19:17.6839926Z ##[endgroup] n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:19:17.6842329Z [command]/usr/bin/git sparse-checkout disable n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:19:17.6879934Z [command]/usr/bin/git config --local --unset-all extensions.worktreeConfig n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:19:17.6907147Z ##[group]Checking out the ref n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:19:17.6909323Z [command]/usr/bin/git checkout --progress --force refs/remotes/pull/27/merge n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:19:17.6952189Z HEAD is now at 62ed01167 Merge 77378b113f546c0fb9baed3bf6bd82525a0bb28f into 86f20ac831033a20bd5e096b1c318a75249179f3 n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:19:17.6957200Z ##[endgroup] n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:19:17.6994259Z [command]/usr/bin/git log -1 --format=%H n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:19:17.7019607Z 62ed01167c9aa4bf0fe4930e6f0f9d7cfa297b3f n1-gate (self-hosted, Linux, kitsubito) Use mold linker (Linux) 2026-06-21T07:19:17.7204876Z ##[group]Run echo 'RUSTFLAGS=-C link-arg=-fuse-ld=mold' >> "$GITHUB_ENV" n1-gate (self-hosted, Linux, kitsubito) Use mold linker (Linux) 2026-06-21T07:19:17.7206330Z echo 'RUSTFLAGS=-C link-arg=-fuse-ld=mold' >> "$GITHUB_ENV" n1-gate (self-hosted, Linux, kitsubito) Use mold linker (Linux) 2026-06-21T07:19:17.7223557Z shell: /usr/bin/bash -e {0} n1-gate (self-hosted, Linux, kitsubito) Use mold linker (Linux) 2026-06-21T07:19:17.7224288Z ##[endgroup] n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:17.7360801Z ##[group]Run set -euo pipefail n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:17.7361656Z set -euo pipefail n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:17.7362338Z PIN=0c95435 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:17.7362996Z CACHE="$HOME/spt-n1-oldbroker" n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:17.7363806Z BIN="$CACHE/target/debug/spt" n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:17.7364976Z # Self-healing cache: rebuild the pin only when it moves. Clone OUTSIDE n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:17.7366411Z # the workspace (a clone inside gets adopted by the cargo workspace). n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:17.7367848Z if [ ! -x "$BIN" ] || [ "$(cat "$CACHE/.builtpin" 2>/dev/null || true)" != "$PIN" ]; then n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:17.7369130Z  rm -rf "$CACHE" n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:17.7369906Z  git clone "$GITHUB_WORKSPACE" "$CACHE" n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:17.7370779Z  git -C "$CACHE" checkout "$PIN" n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:17.7371869Z  cargo build --manifest-path "$CACHE/Cargo.toml" -p spt --bin spt n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:17.7373008Z  echo "$PIN" > "$CACHE/.builtpin" n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:17.7373814Z fi n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:17.7374736Z SPT_N1_OLD_BROKER="$BIN" cargo test -p spt --test n1_pairing -- --nocapture n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:17.7389978Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:17.7390922Z env: n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:17.7391694Z RUSTFLAGS: -C link-arg=-fuse-ld=mold n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:17.7392439Z ##[endgroup] n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:18.0180956Z Compiling proc-macro2 v1.0.106 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:18.0182171Z Compiling unicode-ident v1.0.24 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:18.0182938Z Compiling quote v1.0.45 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:18.0183714Z Compiling libc v0.2.186 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:18.0184428Z Compiling serde_core v1.0.228 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:18.0185166Z Compiling cfg-if v1.0.4 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:18.0206072Z Compiling serde v1.0.228 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:18.0248350Z Compiling log v0.4.32 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:18.0276772Z Compiling pin-project-lite v0.2.17 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:18.0277755Z Compiling typenum v1.20.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:18.0313338Z Compiling portable-atomic v1.13.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:18.0360303Z Compiling version_check v0.9.5 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:18.0489229Z Compiling memchr v2.8.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:18.0501055Z Compiling critical-section v1.2.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:18.0502506Z Compiling find-msvc-tools v0.1.9 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:18.0790859Z Compiling shlex v2.0.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:18.1041907Z Compiling futures-core v0.3.32 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:18.1043900Z Compiling subtle v2.6.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:18.1412333Z Compiling bytes v1.11.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:18.2595721Z Compiling equivalent v1.0.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:18.3021124Z Compiling smallvec v1.15.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:18.3236679Z Compiling itoa v1.0.18 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:18.3436038Z Compiling semver v1.0.28 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:18.3521822Z Compiling stable_deref_trait v1.2.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:18.3610918Z Compiling futures-io v0.3.32 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:18.3656942Z Compiling futures-sink v0.3.32 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:18.4321681Z Compiling slab v0.4.12 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:18.4362125Z Compiling futures-task v0.3.32 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:18.4411444Z Compiling generic-array v0.14.7 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:18.4603058Z Compiling futures-channel v0.3.32 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:18.5231117Z Compiling bitflags v2.12.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:18.5232325Z Compiling rustversion v1.0.22 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:18.5763853Z Compiling hashbrown v0.17.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:18.6329439Z Compiling cpufeatures v0.2.17 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:18.6640658Z Compiling rustc_version v0.4.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:18.6800614Z Compiling fnv v1.0.7 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:18.6830822Z Compiling cfg_aliases v0.2.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:18.7390620Z Compiling strsim v0.11.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:18.7509078Z Compiling rand_core v0.10.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:18.7578121Z Compiling litemap v0.8.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:18.7745519Z Compiling writeable v0.6.3 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:18.7941294Z Compiling utf8_iter v1.0.4 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:18.8262309Z Compiling dunce v1.0.5 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:18.9126505Z Compiling fs_extra v1.3.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:18.9220579Z Compiling icu_properties_data v2.2.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:19.0121720Z Compiling getrandom v0.4.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:19.0276847Z Compiling ident_case v1.0.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:19.0400425Z Compiling icu_normalizer_data v2.2.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:19.0441541Z Compiling autocfg v1.5.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:19.0600690Z Compiling percent-encoding v2.3.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:19.2090938Z Compiling http v1.4.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:19.2320581Z Compiling thiserror v2.0.18 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:19.2450739Z Compiling cpufeatures v0.3.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:19.2620910Z Compiling unicode-segmentation v1.13.3 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:19.2910927Z Compiling aws-lc-rs v1.17.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:19.2981400Z Compiling scopeguard v1.2.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:19.3200882Z Compiling chacha20 v0.10.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:19.3720652Z Compiling lock_api v0.4.14 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:19.3941246Z Compiling syn v2.0.117 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:19.4770695Z Compiling form_urlencoded v1.2.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:19.4880263Z Compiling untrusted v0.9.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:19.5490729Z Compiling indexmap v2.14.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:19.5890751Z Compiling rustls v0.23.40 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:19.6109723Z Compiling heck v0.5.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:19.6221992Z Compiling atomic-waker v1.1.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:19.6370816Z Compiling const-oid v0.10.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:19.6391222Z Compiling anyhow v1.0.102 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:19.6828743Z Compiling unicode-xid v0.2.6 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:19.7000286Z Compiling httparse v1.10.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:19.7122017Z Compiling parking_lot_core v0.9.12 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:19.7660495Z Compiling jobserver v0.1.34 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:19.7871430Z Compiling convert_case v0.10.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:19.8180565Z Compiling zerocopy v0.8.50 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:19.8250612Z Compiling paste v1.0.15 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:19.8773330Z Compiling num-traits v0.2.19 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:19.8869982Z Compiling hybrid-array v0.4.12 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:19.9050529Z Compiling curve25519-dalek v4.1.3 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:20.0006510Z Compiling cc v1.2.63 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:20.0860731Z Compiling ahash v0.8.12 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:20.1443188Z Compiling crypto-common v0.1.7 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:20.1641361Z Compiling block-buffer v0.10.4 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:20.1712157Z Compiling fastrand v2.4.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:20.1713023Z Compiling powerfmt v0.2.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:20.1713645Z Compiling either v1.16.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:20.1720357Z Compiling base64ct v1.8.3 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:20.2700564Z Compiling digest v0.10.7 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:20.4060677Z Compiling deranged v0.5.8 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:20.4430573Z Compiling http-body v1.0.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:20.4821393Z Compiling zmij v1.0.21 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:20.5440351Z Compiling time-core v0.1.8 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:20.5811107Z Compiling base64 v0.22.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:20.6029179Z Compiling vcpkg v0.2.15 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:20.6710663Z Compiling pem-rfc7468 v1.0.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:20.6992248Z Compiling num-conv v0.2.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:20.7030694Z Compiling pkg-config v0.3.33 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:20.7344669Z Compiling mio v1.2.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:20.7845905Z Compiling socket2 v0.6.4 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:20.8120401Z Compiling getrandom v0.2.17 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:20.9590620Z Compiling try-lock v0.2.5 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:20.9980663Z Compiling rand v0.10.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:21.0138421Z Compiling rand_core v0.6.4 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:21.0420364Z Compiling data-encoding v2.11.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:21.0450228Z Compiling tinyvec_macros v0.1.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:21.1139689Z Compiling tower-service v0.3.3 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:21.1410785Z Compiling tinyvec v1.11.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:21.1810547Z Compiling parking_lot v0.12.5 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:21.2106541Z Compiling want v0.3.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:21.2598613Z Compiling block-buffer v0.12.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:21.3170709Z Compiling crypto-common v0.2.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:21.3696418Z Compiling cmake v0.1.58 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:21.5660704Z Compiling sha2 v0.10.9 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:21.5872217Z Compiling inout v0.1.4 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:21.5985319Z Compiling vergen-lib v9.1.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:21.6710175Z Compiling n0-future v0.3.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:21.7111588Z Compiling serde_json v1.0.150 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:21.7210384Z Compiling winnow v1.0.3 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:21.7740861Z Compiling diatomic-waker v0.2.3 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:21.7799425Z Compiling signature v2.2.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:21.7980382Z Compiling crossbeam-utils v0.8.21 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:21.8760612Z Compiling cordyceps v0.3.4 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:21.8980570Z Compiling spin v0.10.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:21.9320404Z Compiling parking v2.2.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:21.9421458Z Compiling httpdate v1.0.3 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:21.9886270Z Compiling ed25519 v2.2.3 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:22.0350363Z Compiling futures-lite v2.6.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:22.0630419Z Compiling cipher v0.4.4 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:22.0806707Z Compiling netlink-packet-core v0.8.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:22.1051614Z Compiling universal-hash v0.5.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:22.1180702Z Compiling vergen v9.1.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:22.2184016Z Compiling futures-buffered v0.2.13 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:22.2370541Z Compiling digest v0.11.3 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:22.2460670Z Compiling vergen-lib v0.1.6 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:22.2488921Z Compiling curve25519-dalek v5.0.0-pre.6 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:22.2840407Z Compiling aws-lc-sys v0.41.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:22.2910425Z Compiling ring v0.17.14 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:22.3030335Z Compiling libsqlite3-sys v0.30.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:22.3833235Z Compiling heapless v0.7.17 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:22.4100598Z Compiling noq-udp v0.10.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:22.4230848Z Compiling sync_wrapper v1.0.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:22.4270732Z Compiling byteorder v1.5.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:22.4971049Z Compiling allocator-api2 v0.2.21 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:22.5190432Z Compiling toml_datetime v1.1.1+spec-1.1.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:22.5297718Z Compiling opaque-debug v0.3.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:22.5920856Z Compiling polyval v0.6.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:22.6430571Z Compiling hash32 v0.2.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:22.6930624Z Compiling spin v0.9.8 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:22.7140083Z Compiling vergen-gitcl v1.0.8 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:22.7990452Z Compiling num_threads v0.1.7 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:22.8509263Z Compiling tower-layer v0.3.3 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:22.8670927Z Compiling fallible-iterator v0.3.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:22.8821796Z Compiling fallible-streaming-iterator v0.1.9 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:22.9020961Z Compiling signature v3.0.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:22.9533573Z Compiling ryu v1.0.23 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:23.0070565Z Compiling time v0.3.47 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:23.0260620Z Compiling ghash v0.5.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:23.0353575Z Compiling sha2 v0.11.0-rc.5 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:23.0540576Z Compiling aes v0.8.4 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:23.1250786Z Compiling ctr v0.9.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:23.1601370Z Compiling fs2 v0.4.3 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:23.2400433Z Compiling http-body-util v0.1.3 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:23.3216797Z Compiling aead v0.5.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:23.3300612Z Compiling openssl-probe v0.2.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:23.3301557Z Compiling crossbeam-epoch v0.9.18 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:23.4191300Z Compiling toml_parser v1.1.2+spec-1.1.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:23.4514622Z Compiling crossbeam-channel v0.5.15 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:23.5126624Z Compiling netlink-packet-route v0.29.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:23.5300491Z Compiling blake3 v1.8.5 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:23.5412091Z Compiling uuid v1.23.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:23.6951027Z Compiling aes-gcm v0.10.3 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:23.7234441Z Compiling memoffset v0.6.5 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:23.8700516Z Compiling acto v0.8.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:23.8940785Z Compiling noq v0.18.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:23.9000737Z Compiling netwatch v0.16.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:23.9630575Z Compiling xml-rs v0.8.28 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:24.1103976Z Compiling toml_edit v0.25.12+spec-1.1.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:24.1433883Z Compiling lru-slab v0.1.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:24.1621827Z Compiling sorted-index-buffer v0.2.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:24.1666406Z Compiling tagptr v0.2.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:24.1891054Z Compiling foldhash v0.2.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:24.2630742Z Compiling rustix v1.1.4 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:24.3000489Z Compiling ref-cast v1.0.25 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:24.3002286Z Compiling mac-addr v0.3.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:24.3140410Z Compiling rustc-hash v2.1.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:24.3951026Z Compiling synstructure v0.13.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:24.4088256Z Compiling darling_core v0.20.11 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:24.4920607Z Compiling identity-hash v0.1.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:24.5057044Z Compiling thiserror v1.0.69 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:24.5983464Z Compiling hashbrown v0.16.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:24.6010789Z Compiling serde_derive_internals v0.29.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:24.7778588Z Compiling xmltree v0.10.3 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:24.8390785Z Compiling netlink-packet-route v0.30.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:25.0018448Z Compiling proc-macro-crate v3.5.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:25.3080489Z Compiling serial-core v0.4.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:25.3681637Z Compiling termios v0.2.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:25.3960637Z Compiling errno v0.3.14 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:25.4121232Z Compiling ioctl-rs v0.1.6 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:25.4220813Z Compiling aho-corasick v1.1.4 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:25.4880337Z Compiling simple-dns v0.9.3 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:25.5087601Z Compiling sha1_smol v1.0.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:25.5198853Z Compiling arrayvec v0.7.6 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:25.5422352Z Compiling linux-raw-sys v0.12.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:25.6001218Z Compiling regex-syntax v0.8.10 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:25.6610660Z Compiling signal-hook v0.3.18 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:25.7307711Z Compiling arrayref v0.3.9 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:25.7351295Z Compiling resolv-conf v0.7.6 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:25.7560568Z Compiling toml_write v0.1.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:25.7966248Z Compiling winnow v0.7.15 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:25.8210868Z Compiling constant_time_eq v0.4.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:25.8246749Z Compiling simdutf8 v0.1.5 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:26.0240833Z Compiling smol_str v0.1.24 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:26.2035546Z Compiling signal-hook-registry v1.4.8 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:26.2550660Z Compiling serial-unix v0.4.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:26.2641176Z Compiling lru v0.16.4 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:26.3448408Z Compiling serde_derive v1.0.228 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:26.4237710Z Compiling zeroize_derive v1.4.3 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:26.4718365Z Compiling tokio-macros v2.7.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:26.5560670Z Compiling zerofrom-derive v0.1.7 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:26.7296269Z Compiling futures-macro v0.3.32 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:27.0180396Z Compiling zeroize v1.8.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:27.1860703Z Compiling tokio v1.52.3 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:27.2188396Z Compiling yoke-derive v0.8.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:27.4160309Z Compiling zerovec-derive v0.11.3 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:27.6130976Z Compiling displaydoc v0.2.6 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:27.8580775Z Compiling futures-util v0.3.32 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:28.0683577Z Compiling tracing-attributes v0.1.31 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:28.1002133Z Compiling zerofrom v0.1.8 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:28.2590998Z Compiling rustls-pki-types v1.14.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:28.5330605Z Compiling curve25519-dalek-derive v0.1.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:28.5454604Z Compiling thiserror-impl v2.0.18 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:28.5950404Z Compiling yoke v0.8.3 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:28.8185817Z Compiling zerotrie v0.2.4 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:28.9980629Z Compiling zerovec v0.11.6 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:29.1940668Z Compiling darling_macro v0.20.11 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:29.2082401Z Compiling derive_more-impl v2.1.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:29.2461122Z Compiling spez v0.1.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:29.4980443Z Compiling n0-error-macros v0.1.3 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:29.5131418Z Compiling darling v0.20.11 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:29.5881013Z Compiling derive_builder_core v0.20.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:29.7310490Z Compiling der v0.8.0-rc.10 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:29.8715266Z Compiling tinystr v0.8.3 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:29.9136239Z Compiling potential_utf v0.1.5 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:30.0990863Z Compiling icu_locale_core v2.2.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:30.1220481Z Compiling icu_collections v2.2.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:30.4920876Z Compiling pin-project-internal v1.1.13 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:30.7221825Z Compiling n0-error v0.1.3 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:30.9548285Z Compiling cobs v0.3.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:31.0392968Z Compiling derive_builder_macro v0.20.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:31.1460586Z Compiling spki v0.8.0-rc.4 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:31.1745429Z Compiling ed25519-dalek v2.2.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:31.3410013Z Compiling icu_provider v2.2.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:31.3660489Z Compiling derive_builder v0.20.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:31.5932917Z Compiling ipnet v2.12.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:31.6191046Z Compiling pkcs8 v0.11.0-rc.10 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:31.6670627Z Compiling icu_normalizer v2.2.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:31.7364546Z Compiling icu_properties v2.2.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:31.7678922Z Compiling futures-executor v0.3.32 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:31.8217280Z Compiling ed25519 v3.0.0-rc.4 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:31.9331672Z Compiling pin-project v1.1.13 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:32.0133953Z Compiling futures v0.3.32 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:32.0750644Z Compiling prefix-trie v0.8.4 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:32.1399443Z Compiling spt-proto v0.12.1 (/home/reavus/actions-runner/_work/spt-core/spt-core/crates/spt-proto) n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:32.3678241Z Compiling once_cell v1.21.4 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:32.4589606Z Compiling postcard-derive v0.2.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:32.4750527Z Compiling data-encoding-macro-internal v0.1.18 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:32.5640493Z Compiling tracing-core v0.1.36 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:32.6170480Z Compiling rustls-native-certs v0.8.4 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:32.7945632Z Compiling hashbrown v0.14.5 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:32.9150970Z Compiling enum-assoc v1.3.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:32.9330940Z Compiling data-encoding-macro v0.1.20 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:33.0035110Z Compiling tokio-util v0.7.18 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:33.0630849Z Compiling netlink-sys v0.8.8 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:33.1725880Z Compiling tracing v0.1.44 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:33.2885457Z Compiling idna_adapter v1.2.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:33.3873416Z Compiling idna v1.1.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:33.3940555Z Compiling ed25519-dalek v3.0.0-pre.6 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:33.5530560Z Compiling postcard v1.1.3 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:33.5712458Z Compiling derive_more v2.1.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:33.6178641Z Compiling tower v0.5.3 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:33.6196046Z Compiling strum_macros v0.28.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:33.7302523Z Compiling hashlink v0.9.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:33.7521023Z Compiling num_enum_derive v0.7.6 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:33.7562154Z Compiling async-trait v0.1.89 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:33.7670937Z Compiling iroh-metrics-derive v0.4.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:33.8210576Z Compiling iroh-relay v0.98.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:33.9568017Z Compiling url v2.5.8 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:33.9568722Z Compiling netdev v0.42.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:34.0084837Z Compiling h2 v0.4.14 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:34.1168447Z Compiling rusqlite v0.32.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:34.1690775Z Compiling tokio-stream v0.1.18 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:34.2177405Z Compiling iroh-metrics v0.38.3 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:34.2590508Z Compiling n0-watcher v0.6.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:34.3310888Z Compiling netlink-proto v0.12.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:34.5217246Z Compiling moka v0.12.15 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:34.6210357Z Compiling serde_spanned v0.6.9 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:34.6990870Z Compiling toml_datetime v0.6.11 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:34.7580764Z Compiling hickory-proto v0.26.0-beta.4 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:34.8031695Z Compiling tower-http v0.6.11 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:34.9033896Z Compiling attohttpc v0.30.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:34.9240753Z Compiling num_enum v0.7.6 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:34.9741645Z Compiling iroh-base v0.98.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:35.0129878Z Compiling ref-cast-impl v1.0.25 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:35.0779221Z Compiling thiserror-impl v1.0.69 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:35.2950733Z Compiling toml_edit v0.22.27 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:35.3840912Z Compiling spt-store v0.12.1 (/home/reavus/actions-runner/_work/spt-core/spt-core/crates/spt-store) n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:35.6360631Z Compiling webpki-roots v1.0.7 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:35.7391009Z Compiling regex-automata v0.4.14 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:35.7460479Z Compiling schemars_derive v1.2.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:35.8500852Z Compiling darling_core v0.23.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:35.8750560Z Compiling serde_bytes v0.11.19 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:36.1000957Z Compiling seize v0.5.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:36.1590348Z Compiling hmac v0.12.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:36.2621057Z Compiling iroh v0.98.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:36.2976996Z Compiling dyn-clone v1.0.20 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:36.3710924Z Compiling strum v0.28.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:36.4480441Z Compiling cmov v0.5.4 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:36.4950939Z Compiling iroh-dns v0.98.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:36.5560777Z Compiling utf8parse v0.2.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:36.5632978Z Compiling bitflags v1.3.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:36.6333755Z Compiling pin-utils v0.1.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:36.6410557Z Compiling rustix v0.38.44 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:36.6660890Z Compiling anstyle-parse v1.0.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:36.7070386Z Compiling ctutils v0.4.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:36.7190524Z Compiling nix v0.25.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:36.8520241Z Compiling filedescriptor v0.8.3 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:36.8813618Z Compiling papaya v0.2.4 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:36.9100639Z Compiling hkdf v0.12.4 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:36.9749221Z Compiling backon v1.6.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:37.0470678Z Compiling serial v0.4.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:37.0734271Z Compiling colorchoice v1.0.5 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:37.0942278Z Compiling is_terminal_polyfill v1.70.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:37.1330899Z Compiling shell-words v1.1.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:37.1800554Z Compiling anstyle v1.0.14 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:37.1940190Z Compiling anstyle-query v1.1.5 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:37.2440686Z Compiling foldhash v0.1.5 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:37.2938026Z Compiling downcast-rs v1.2.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:37.3165543Z Compiling instability v0.3.12 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:37.3708237Z Compiling linux-raw-sys v0.4.15 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:37.4086388Z Compiling anstream v1.0.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:37.4284569Z Compiling hashbrown v0.15.5 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:37.4325299Z Compiling signal-hook-mio v0.2.5 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:37.4850591Z Compiling swarm-discovery v0.6.0-alpha.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:37.5220516Z Compiling spake2 v0.4.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:37.5800719Z Compiling terminal_size v0.4.4 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:37.7640863Z Compiling strum_macros v0.26.4 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:37.8520615Z Compiling schemars v1.2.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:37.8782188Z Compiling sha1 v0.10.6 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:37.9375108Z Compiling toml v0.8.23 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:38.1680390Z Compiling itertools v0.13.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:38.1810884Z Compiling castaway v0.2.4 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:38.3300082Z Compiling spt-msg v0.12.1 (/home/reavus/actions-runner/_work/spt-core/spt-core/crates/spt-msg) n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:38.9800697Z Compiling regex v1.12.3 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:39.0359955Z Compiling indoc v2.0.7 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:39.2130615Z Compiling clap_lex v1.1.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:39.4450593Z Compiling darling_macro v0.23.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:39.4651029Z Compiling spt-runtime v0.12.1 (/home/reavus/actions-runner/_work/spt-core/spt-core/crates/spt-runtime) n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:39.5160477Z Compiling unicode-width v0.1.14 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:39.6000356Z Compiling hyper v1.10.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:39.8100787Z Compiling darling v0.23.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:39.8158250Z Compiling doctest-file v1.1.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:39.8760611Z Compiling static_assertions v1.1.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:39.9411347Z Compiling compact_str v0.8.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:40.1522110Z Compiling unicode-truncate v1.1.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:40.1910363Z Compiling strum v0.26.3 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:40.2675148Z Compiling interprocess v2.4.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:40.3061213Z Compiling clap_builder v4.6.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:40.3270734Z Compiling crossterm v0.28.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:40.3854725Z Compiling lru v0.12.5 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:40.4909423Z Compiling clap_derive v4.6.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:40.5950680Z Compiling unicode-width v0.2.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:40.8542220Z Compiling cassowary v0.3.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:40.8730643Z Compiling iana-time-zone v0.1.65 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:40.8954719Z Compiling portable-pty v0.8.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:40.9720968Z Compiling nucleo-matcher v0.3.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:41.1520469Z Compiling chrono v0.4.45 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:41.2669409Z Compiling ratatui v0.29.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:41.5700649Z Compiling hyper-util v0.1.20 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:41.6990849Z Compiling spt-term v0.12.1 (/home/reavus/actions-runner/_work/spt-core/spt-core/crates/spt-term) n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:41.8730764Z Compiling qrcode v0.14.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:41.9071182Z Compiling tempfile v3.27.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:42.6551146Z Compiling spt-live v0.12.1 (/home/reavus/actions-runner/_work/spt-core/spt-core/crates/spt-live) n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:43.0010978Z Compiling clap v4.6.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:43.4681855Z Compiling igd-next v0.17.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:44.6212985Z Compiling portmapper v0.16.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:49.6537183Z Compiling rustls-webpki v0.103.13 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:51.9963186Z Compiling tokio-rustls v0.26.4 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:51.9963808Z Compiling noq-proto v0.17.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:51.9964360Z Compiling rustls-platform-verifier v0.7.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:52.1380152Z Compiling hickory-net v0.26.0-beta.4 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:52.1380840Z Compiling hyper-rustls v0.27.9 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:52.1381368Z Compiling tokio-websockets v0.13.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:52.2600602Z Compiling reqwest v0.13.4 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:19:53.1664416Z Compiling hickory-resolver v0.26.0-beta.4 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:20:06.7682691Z Compiling spt-net v0.12.1 (/home/reavus/actions-runner/_work/spt-core/spt-core/crates/spt-net) n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:20:08.1118071Z Compiling spt-daemon v0.12.1 (/home/reavus/actions-runner/_work/spt-core/spt-core/crates/spt-daemon) n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:20:15.1364931Z Compiling spt v0.12.1 (/home/reavus/actions-runner/_work/spt-core/spt-core/crates/spt) n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:20:18.7668176Z Finished `test` profile [unoptimized + debuginfo] target(s) in 1m 01s n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:20:18.7891785Z Running tests/n1_pairing.rs (target/debug/deps/n1_pairing-a610d2092bf5e776) n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:20:18.7905887Z n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:20:18.7906123Z running 1 test n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:20:24.8761425Z test new_brain_serves_against_old_broker ... ok n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:20:24.8761711Z n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:20:24.8761923Z test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 6.09s n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T07:20:24.8762247Z n1-gate (self-hosted, Linux, kitsubito) Post Run actions/checkout@v5 2026-06-21T07:20:24.8979943Z Post job cleanup. n1-gate (self-hosted, Linux, kitsubito) Post Run actions/checkout@v5 2026-06-21T07:20:24.9657900Z [command]/usr/bin/git version n1-gate (self-hosted, Linux, kitsubito) Post Run actions/checkout@v5 2026-06-21T07:20:24.9689385Z git version 2.43.0 n1-gate (self-hosted, Linux, kitsubito) Post Run actions/checkout@v5 2026-06-21T07:20:24.9721070Z Temporarily overriding HOME='/home/reavus/actions-runner/_work/_temp/050d8f1f-e898-4643-98bc-552f7536c205' before making global git config changes n1-gate (self-hosted, Linux, kitsubito) Post Run actions/checkout@v5 2026-06-21T07:20:24.9722239Z Adding repository directory to the temporary git global config as a safe directory n1-gate (self-hosted, Linux, kitsubito) Post Run actions/checkout@v5 2026-06-21T07:20:24.9725221Z [command]/usr/bin/git config --global --add safe.directory /home/reavus/actions-runner/_work/spt-core/spt-core n1-gate (self-hosted, Linux, kitsubito) Post Run actions/checkout@v5 2026-06-21T07:20:24.9755130Z [command]/usr/bin/git config --local --name-only --get-regexp core\.sshCommand n1-gate (self-hosted, Linux, kitsubito) Post Run actions/checkout@v5 2026-06-21T07:20:24.9781221Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'core\.sshCommand' && git config --local --unset-all 'core.sshCommand' || :" n1-gate (self-hosted, Linux, kitsubito) Post Run actions/checkout@v5 2026-06-21T07:20:24.9999695Z [command]/usr/bin/git config --local --name-only --get-regexp http\.https\:\/\/github\.com\/\.extraheader n1-gate (self-hosted, Linux, kitsubito) Post Run actions/checkout@v5 2026-06-21T07:20:25.0018771Z http.https://github.com/.extraheader n1-gate (self-hosted, Linux, kitsubito) Post Run actions/checkout@v5 2026-06-21T07:20:25.0025634Z [command]/usr/bin/git config --local --unset-all http.https://github.com/.extraheader n1-gate (self-hosted, Linux, kitsubito) Post Run actions/checkout@v5 2026-06-21T07:20:25.0051604Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'http\.https\:\/\/github\.com\/\.extraheader' && git config --local --unset-all 'http.https://github.com/.extraheader' || :" n1-gate (self-hosted, Linux, kitsubito) Post Run actions/checkout@v5 2026-06-21T07:20:25.0239008Z [command]/usr/bin/git config --local --name-only --get-regexp ^includeIf\.gitdir: n1-gate (self-hosted, Linux, kitsubito) Post Run actions/checkout@v5 2026-06-21T07:20:25.0262378Z [command]/usr/bin/git submodule foreach --recursive git config --local --show-origin --name-only --get-regexp remote.origin.url n1-gate (self-hosted, Linux, kitsubito) Complete job 2026-06-21T07:20:25.0568927Z Cleaning up orphan processes n1-gate (self-hosted, Linux, kitsubito) Complete job 2026-06-21T07:20:25.1085467Z Terminate orphan process: pid (3350075) (spt) test (self-hosted, Linux, kitsubito) Set up job 2026-06-21T07:20:29.5956704Z Current runner version: '2.335.1' test (self-hosted, Linux, kitsubito) Set up job 2026-06-21T07:20:29.5961843Z Runner name: 'kitsubito' test (self-hosted, Linux, kitsubito) Set up job 2026-06-21T07:20:29.5962368Z Runner group name: 'Default' test (self-hosted, Linux, kitsubito) Set up job 2026-06-21T07:20:29.5963024Z Machine name: 'KITSUBITO' test (self-hosted, Linux, kitsubito) Set up job 2026-06-21T07:20:29.5964949Z ##[group]GITHUB_TOKEN Permissions test (self-hosted, Linux, kitsubito) Set up job 2026-06-21T07:20:29.5966706Z Contents: read test (self-hosted, Linux, kitsubito) Set up job 2026-06-21T07:20:29.5967127Z Metadata: read test (self-hosted, Linux, kitsubito) Set up job 2026-06-21T07:20:29.5967509Z Packages: read test (self-hosted, Linux, kitsubito) Set up job 2026-06-21T07:20:29.5967889Z ##[endgroup] test (self-hosted, Linux, kitsubito) Set up job 2026-06-21T07:20:29.5969779Z Secret source: Actions test (self-hosted, Linux, kitsubito) Set up job 2026-06-21T07:20:29.5970300Z Prepare workflow directory test (self-hosted, Linux, kitsubito) Set up job 2026-06-21T07:20:29.6329538Z Prepare all required actions test (self-hosted, Linux, kitsubito) Set up job 2026-06-21T07:20:29.6359198Z Getting action download info test (self-hosted, Linux, kitsubito) Set up job 2026-06-21T07:20:29.9839641Z Download action repository 'actions/checkout@v5' (SHA:93cb6efe18208431cddfb8368fd83d5badbf9bfd) test (self-hosted, Linux, kitsubito) Set up job 2026-06-21T07:20:30.5075041Z Complete job name: test (self-hosted, Linux, kitsubito) test (self-hosted, Linux, kitsubito) Reap stray flood orphans + workspace daemons (pre-test contention guard) 2026-06-21T07:20:30.5890346Z ##[group]Run pkill -9 -f 'yes FLOOD' || true test (self-hosted, Linux, kitsubito) Reap stray flood orphans + workspace daemons (pre-test contention guard) 2026-06-21T07:20:30.5891019Z pkill -9 -f 'yes FLOOD' || true test (self-hosted, Linux, kitsubito) Reap stray flood orphans + workspace daemons (pre-test contention guard) 2026-06-21T07:20:30.5891606Z for p in $(pgrep -x 'spt|notify-shell' || true); do test (self-hosted, Linux, kitsubito) Reap stray flood orphans + workspace daemons (pre-test contention guard) 2026-06-21T07:20:30.5892215Z  exe=$(readlink -f "/proc/$p/exe" 2>/dev/null || true) test (self-hosted, Linux, kitsubito) Reap stray flood orphans + workspace daemons (pre-test contention guard) 2026-06-21T07:20:30.5892745Z  case "$exe" in test (self-hosted, Linux, kitsubito) Reap stray flood orphans + workspace daemons (pre-test contention guard) 2026-06-21T07:20:30.5893249Z  "$GITHUB_WORKSPACE"/*) kill -9 "$p" 2>/dev/null || true ;; test (self-hosted, Linux, kitsubito) Reap stray flood orphans + workspace daemons (pre-test contention guard) 2026-06-21T07:20:30.5893774Z  esac test (self-hosted, Linux, kitsubito) Reap stray flood orphans + workspace daemons (pre-test contention guard) 2026-06-21T07:20:30.5894146Z done test (self-hosted, Linux, kitsubito) Reap stray flood orphans + workspace daemons (pre-test contention guard) 2026-06-21T07:20:30.5894493Z exit 0 test (self-hosted, Linux, kitsubito) Reap stray flood orphans + workspace daemons (pre-test contention guard) 2026-06-21T07:20:30.5910525Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} test (self-hosted, Linux, kitsubito) Reap stray flood orphans + workspace daemons (pre-test contention guard) 2026-06-21T07:20:30.5911311Z ##[endgroup] test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:20:30.6758414Z ##[group]Run actions/checkout@v5 test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:20:30.6759287Z with: test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:20:30.6759781Z repository: SaberMage/spt-core test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:20:30.6763127Z token: *** test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:20:30.6763599Z ssh-strict: true test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:20:30.6816017Z ssh-user: git test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:20:30.6816610Z persist-credentials: true test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:20:30.6817025Z clean: true test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:20:30.6817429Z sparse-checkout-cone-mode: true test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:20:30.6817855Z fetch-depth: 1 test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:20:30.6818222Z fetch-tags: false test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:20:30.6818574Z show-progress: true test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:20:30.6819019Z lfs: false test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:20:30.6819366Z submodules: false test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:20:30.6819735Z set-safe-directory: true test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:20:30.6820131Z ##[endgroup] test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:20:30.7576146Z Syncing repository: SaberMage/spt-core test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:20:30.7577688Z ##[group]Getting Git version info test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:20:30.7578332Z Working directory is '/home/reavus/actions-runner/_work/spt-core/spt-core' test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:20:30.7579430Z [command]/usr/bin/git version test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:20:30.7599756Z git version 2.43.0 test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:20:30.7618334Z ##[endgroup] test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:20:30.7632807Z Temporarily overriding HOME='/home/reavus/actions-runner/_work/_temp/1a55d9d3-95d5-4b74-a777-3b734524c38e' before making global git config changes test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:20:30.7634785Z Adding repository directory to the temporary git global config as a safe directory test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:20:30.7636854Z [command]/usr/bin/git config --global --add safe.directory /home/reavus/actions-runner/_work/spt-core/spt-core test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:20:30.7670664Z [command]/usr/bin/git config --local --get remote.origin.url test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:20:30.7689412Z https://github.com/SaberMage/spt-core test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:20:30.7700088Z ##[group]Removing previously created refs, to avoid conflicts test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:20:30.7703210Z [command]/usr/bin/git rev-parse --symbolic-full-name --verify --quiet HEAD test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:20:30.7721780Z HEAD test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:20:30.7752006Z ##[endgroup] test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:20:30.7752894Z [command]/usr/bin/git submodule status test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:20:30.7954351Z ##[group]Cleaning the repository test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:20:30.7956947Z [command]/usr/bin/git clean -ffdx test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:20:31.5490212Z Removing target/ test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:20:31.5499049Z [command]/usr/bin/git reset --hard HEAD test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:20:31.5549757Z HEAD is now at 62ed01167 Merge 77378b113f546c0fb9baed3bf6bd82525a0bb28f into 86f20ac831033a20bd5e096b1c318a75249179f3 test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:20:31.5555279Z ##[endgroup] test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:20:31.5557209Z ##[group]Disabling automatic garbage collection test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:20:31.5561256Z [command]/usr/bin/git config --local gc.auto 0 test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:20:31.5589421Z ##[endgroup] test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:20:31.5595294Z ##[group]Setting up auth test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:20:31.5596229Z [command]/usr/bin/git config --local --name-only --get-regexp core\.sshCommand test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:20:31.5624174Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'core\.sshCommand' && git config --local --unset-all 'core.sshCommand' || :" test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:20:31.5810167Z [command]/usr/bin/git config --local --name-only --get-regexp http\.https\:\/\/github\.com\/\.extraheader test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:20:31.5838411Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'http\.https\:\/\/github\.com\/\.extraheader' && git config --local --unset-all 'http.https://github.com/.extraheader' || :" test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:20:31.6030618Z [command]/usr/bin/git config --local --name-only --get-regexp ^includeIf\.gitdir: test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:20:31.6056963Z [command]/usr/bin/git submodule foreach --recursive git config --local --show-origin --name-only --get-regexp remote.origin.url test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:20:31.6247475Z [command]/usr/bin/git config --local http.https://github.com/.extraheader AUTHORIZATION: basic *** test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:20:31.6277881Z ##[endgroup] test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:20:31.6279312Z ##[group]Fetching the repository test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:20:31.6285811Z [command]/usr/bin/git -c protocol.version=2 fetch --no-tags --prune --no-recurse-submodules --depth=1 origin +62ed01167c9aa4bf0fe4930e6f0f9d7cfa297b3f:refs/remotes/pull/27/merge test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:20:32.0585015Z ##[endgroup] test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:20:32.0585878Z ##[group]Determining the checkout info test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:20:32.0586426Z ##[endgroup] test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:20:32.0590949Z [command]/usr/bin/git sparse-checkout disable test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:20:32.0666943Z [command]/usr/bin/git config --local --unset-all extensions.worktreeConfig test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:20:32.0691327Z ##[group]Checking out the ref test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:20:32.0694117Z [command]/usr/bin/git checkout --progress --force refs/remotes/pull/27/merge test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:20:32.0737675Z HEAD is now at 62ed01167 Merge 77378b113f546c0fb9baed3bf6bd82525a0bb28f into 86f20ac831033a20bd5e096b1c318a75249179f3 test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:20:32.0741036Z ##[endgroup] test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:20:32.0778704Z [command]/usr/bin/git log -1 --format=%H test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T07:20:32.0803443Z 62ed01167c9aa4bf0fe4930e6f0f9d7cfa297b3f test (self-hosted, Linux, kitsubito) Use mold linker (Linux) 2026-06-21T07:20:32.0941077Z ##[group]Run echo 'RUSTFLAGS=-C link-arg=-fuse-ld=mold' >> "$GITHUB_ENV" test (self-hosted, Linux, kitsubito) Use mold linker (Linux) 2026-06-21T07:20:32.0941612Z echo 'RUSTFLAGS=-C link-arg=-fuse-ld=mold' >> "$GITHUB_ENV" test (self-hosted, Linux, kitsubito) Use mold linker (Linux) 2026-06-21T07:20:32.0957157Z shell: /usr/bin/bash -e {0} test (self-hosted, Linux, kitsubito) Use mold linker (Linux) 2026-06-21T07:20:32.0957500Z ##[endgroup] test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:20:32.1032944Z ##[group]Run cargo nextest run -p spt-daemon a_journaled_input_wedge_does_not_starve_a_concurrent_rc_attach --no-capture 2>&1 | grep -E 'WEDGE_TRACE|W1b GATE|PASS|FAIL' || true test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:20:32.1033974Z cargo nextest run -p spt-daemon a_journaled_input_wedge_does_not_starve_a_concurrent_rc_attach --no-capture 2>&1 | grep -E 'WEDGE_TRACE|W1b GATE|PASS|FAIL' || true test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:20:32.1046608Z shell: /usr/bin/bash -e {0} test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:20:32.1046870Z env: test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:20:32.1047113Z RUSTFLAGS: -C link-arg=-fuse-ld=mold test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:20:32.1047384Z SPT_WEDGE_TRACE: 1 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:20:32.1047604Z ##[endgroup] test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:00.9093741Z WEDGE_TRACE conn_open drain_appends=0 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:00.9094562Z WEDGE_TRACE conn_hello drain_appends=0 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:00.9094986Z WEDGE_TRACE conn_open drain_appends=1 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:00.9095404Z WEDGE_TRACE conn_hello drain_appends=1 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:00.9095927Z WEDGE_TRACE conn_read kind=subscribe drain_appends_at_read=1 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:00.9096504Z WEDGE_TRACE subscribe sid=1 sessions_lock_wait_us=0 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:00.9097305Z WEDGE_TRACE subscribe sid=1 log_lock_wait_us=86 resolve_us=504 drain_appends_so_far=2 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:00.9098437Z WEDGE_TRACE subscribe sid=1 reply_send_us=43 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:00.9099128Z WEDGE_TRACE drain appends=2000 acquire_wait_total_us=1838 acquire_wait_max_us=452 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:00.9099896Z WEDGE_TRACE drain appends=4000 acquire_wait_total_us=3061 acquire_wait_max_us=452 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:00.9100649Z WEDGE_TRACE drain appends=6000 acquire_wait_total_us=4360 acquire_wait_max_us=452 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:00.9101405Z WEDGE_TRACE drain appends=8000 acquire_wait_total_us=5816 acquire_wait_max_us=452 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:00.9102165Z WEDGE_TRACE drain appends=10000 acquire_wait_total_us=7031 acquire_wait_max_us=452 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:00.9102917Z WEDGE_TRACE drain appends=12000 acquire_wait_total_us=8541 acquire_wait_max_us=452 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:00.9103686Z WEDGE_TRACE drain appends=14000 acquire_wait_total_us=9937 acquire_wait_max_us=452 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:00.9104459Z WEDGE_TRACE drain appends=16000 acquire_wait_total_us=11426 acquire_wait_max_us=452 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:00.9105227Z WEDGE_TRACE drain appends=18000 acquire_wait_total_us=12907 acquire_wait_max_us=452 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:00.9106027Z WEDGE_TRACE drain appends=20000 acquire_wait_total_us=14395 acquire_wait_max_us=452 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:00.9106797Z WEDGE_TRACE drain appends=22000 acquire_wait_total_us=15850 acquire_wait_max_us=452 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:00.9107550Z WEDGE_TRACE drain appends=24000 acquire_wait_total_us=17328 acquire_wait_max_us=452 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:00.9108328Z WEDGE_TRACE drain appends=26000 acquire_wait_total_us=18758 acquire_wait_max_us=452 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:00.9109158Z WEDGE_TRACE drain appends=28000 acquire_wait_total_us=20248 acquire_wait_max_us=452 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:00.9109922Z WEDGE_TRACE drain appends=30000 acquire_wait_total_us=21625 acquire_wait_max_us=452 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:00.9110675Z WEDGE_TRACE drain appends=32000 acquire_wait_total_us=23107 acquire_wait_max_us=452 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:00.9111446Z WEDGE_TRACE drain appends=34000 acquire_wait_total_us=24578 acquire_wait_max_us=452 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:00.9112200Z WEDGE_TRACE drain appends=36000 acquire_wait_total_us=25977 acquire_wait_max_us=452 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:00.9112977Z WEDGE_TRACE drain appends=38000 acquire_wait_total_us=27415 acquire_wait_max_us=452 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:00.9113600Z WEDGE_TRACE conn_open drain_appends=39069 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:00.9114027Z WEDGE_TRACE conn_hello drain_appends=39069 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:00.9114490Z WEDGE_TRACE conn_open drain_appends=39088 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:00.9114972Z WEDGE_TRACE conn_hello drain_appends=39088 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:00.9115496Z WEDGE_TRACE c3-DROP: stream=1 append seq=0 but NO subscriber yet test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:00.9133697Z WEDGE_TRACE conn_read kind=net-stream-subscribe drain_appends_at_read=39088 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:00.9134579Z WEDGE_TRACE subscribe_stream stream=1 streams_lock_wait_us=2 drain_appends=39088 stream_appends=1 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:00.9135724Z WEDGE_TRACE subscribe_stream stream=1 streamlog_log_lock_wait_us=0 attach_us=30 stream_append_wait_total_us=1 stream_append_wait_max_us=1 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:00.9140678Z WEDGE_TRACE net_stream_subscribe stream=1 enter_appends=39088 exit_appends=39088 subscribe_stream_us=59 ok=true test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:00.9141483Z WEDGE_TRACE conn_open drain_appends=39088 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:00.9142069Z WEDGE_TRACE conn_read kind=net-stream-subscribe drain_appends_at_read=39088 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:00.9142941Z WEDGE_TRACE subscribe_stream stream=2 streams_lock_wait_us=0 drain_appends=39088 stream_appends=1 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:00.9144081Z WEDGE_TRACE subscribe_stream stream=2 streamlog_log_lock_wait_us=1 attach_us=2 stream_append_wait_total_us=1 stream_append_wait_max_us=1 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:00.9144977Z WEDGE_TRACE conn_hello drain_appends=39088 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:00.9145732Z WEDGE_TRACE net_stream_subscribe stream=2 enter_appends=39088 exit_appends=39088 subscribe_stream_us=27 ok=true test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:00.9146609Z WEDGE_TRACE conn_read kind=subscribe drain_appends_at_read=39089 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:00.9147195Z WEDGE_TRACE subscribe sid=1 sessions_lock_wait_us=1 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:00.9147859Z WEDGE_TRACE subscribe sid=1 log_lock_wait_us=1 resolve_us=51529 drain_appends_so_far=39089 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:00.9148737Z WEDGE_TRACE subscribe sid=1 reply_send_us=33 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:00.9149348Z WEDGE_TRACE c3: stream=2 live-send seq=0 count=1 write_ok=true test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:00.9150057Z WEDGE_TRACE drain appends=40000 acquire_wait_total_us=80290 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:00.9150853Z WEDGE_TRACE drain appends=42000 acquire_wait_total_us=81790 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:00.9151661Z WEDGE_TRACE drain appends=44000 acquire_wait_total_us=83260 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:00.9152459Z WEDGE_TRACE drain appends=46000 acquire_wait_total_us=84746 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:00.9153259Z WEDGE_TRACE drain appends=48000 acquire_wait_total_us=86250 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:00.9154050Z WEDGE_TRACE drain appends=50000 acquire_wait_total_us=87573 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:00.9154845Z WEDGE_TRACE drain appends=52000 acquire_wait_total_us=89026 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:06.0679457Z WEDGE_TRACE drain appends=54000 acquire_wait_total_us=90407 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:06.0680440Z WEDGE_TRACE drain appends=56000 acquire_wait_total_us=91762 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:06.0681322Z WEDGE_TRACE drain appends=58000 acquire_wait_total_us=93168 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:06.0682095Z WEDGE_TRACE drain appends=60000 acquire_wait_total_us=94435 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:06.0682848Z WEDGE_TRACE drain appends=62000 acquire_wait_total_us=95792 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:06.0683608Z WEDGE_TRACE drain appends=64000 acquire_wait_total_us=97136 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:06.0684404Z WEDGE_TRACE drain appends=66000 acquire_wait_total_us=98576 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:06.0685167Z WEDGE_TRACE drain appends=68000 acquire_wait_total_us=100089 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:06.0685954Z WEDGE_TRACE drain appends=70000 acquire_wait_total_us=101449 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:06.0686717Z WEDGE_TRACE drain appends=72000 acquire_wait_total_us=102973 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:06.0687513Z WEDGE_TRACE drain appends=74000 acquire_wait_total_us=104342 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:06.0688285Z WEDGE_TRACE drain appends=76000 acquire_wait_total_us=105688 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:06.0689148Z WEDGE_TRACE drain appends=78000 acquire_wait_total_us=107122 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:06.0689912Z WEDGE_TRACE drain appends=80000 acquire_wait_total_us=108519 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:06.0690676Z WEDGE_TRACE drain appends=82000 acquire_wait_total_us=110049 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:06.0691461Z WEDGE_TRACE drain appends=84000 acquire_wait_total_us=111361 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:06.0692223Z WEDGE_TRACE drain appends=86000 acquire_wait_total_us=112776 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:06.0693422Z WEDGE_TRACE drain appends=88000 acquire_wait_total_us=114028 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:06.0694201Z WEDGE_TRACE drain appends=90000 acquire_wait_total_us=115366 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:06.0694974Z WEDGE_TRACE drain appends=92000 acquire_wait_total_us=116643 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:06.0695741Z WEDGE_TRACE drain appends=94000 acquire_wait_total_us=117961 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:06.0696505Z WEDGE_TRACE drain appends=96000 acquire_wait_total_us=119355 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:06.0697282Z WEDGE_TRACE drain appends=98000 acquire_wait_total_us=120654 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:06.0698059Z WEDGE_TRACE drain appends=100000 acquire_wait_total_us=122002 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:06.0698840Z WEDGE_TRACE drain appends=102000 acquire_wait_total_us=123335 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:06.0699718Z WEDGE_TRACE drain appends=104000 acquire_wait_total_us=124636 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:06.0700495Z WEDGE_TRACE drain appends=106000 acquire_wait_total_us=126067 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:06.0701454Z WEDGE_TRACE drain appends=108000 acquire_wait_total_us=127400 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:06.0702232Z WEDGE_TRACE drain appends=110000 acquire_wait_total_us=128738 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:06.0703024Z WEDGE_TRACE drain appends=112000 acquire_wait_total_us=130066 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:06.0703798Z WEDGE_TRACE drain appends=114000 acquire_wait_total_us=131489 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:06.0704573Z WEDGE_TRACE drain appends=116000 acquire_wait_total_us=132949 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:06.0705350Z WEDGE_TRACE drain appends=118000 acquire_wait_total_us=134356 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:06.0706125Z WEDGE_TRACE drain appends=120000 acquire_wait_total_us=135764 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:06.0706922Z WEDGE_TRACE drain appends=122000 acquire_wait_total_us=136947 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:06.0707709Z WEDGE_TRACE drain appends=124000 acquire_wait_total_us=138297 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:06.0708513Z WEDGE_TRACE drain appends=126000 acquire_wait_total_us=139539 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:06.0709372Z WEDGE_TRACE drain appends=128000 acquire_wait_total_us=141030 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:06.0710169Z WEDGE_TRACE drain appends=130000 acquire_wait_total_us=142456 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:06.0710957Z WEDGE_TRACE drain appends=132000 acquire_wait_total_us=143968 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:06.0711738Z WEDGE_TRACE drain appends=134000 acquire_wait_total_us=145482 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:06.0712520Z WEDGE_TRACE drain appends=136000 acquire_wait_total_us=146931 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:06.0713305Z WEDGE_TRACE drain appends=138000 acquire_wait_total_us=148289 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:06.0714101Z WEDGE_TRACE drain appends=140000 acquire_wait_total_us=149712 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:06.0714900Z WEDGE_TRACE drain appends=142000 acquire_wait_total_us=151165 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:06.0715717Z WEDGE_TRACE drain appends=144000 acquire_wait_total_us=152715 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:06.0716518Z WEDGE_TRACE drain appends=146000 acquire_wait_total_us=154214 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:16.9062044Z WEDGE_TRACE drain appends=148000 acquire_wait_total_us=155717 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:16.9062702Z WEDGE_TRACE drain appends=150000 acquire_wait_total_us=157121 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:16.9063251Z WEDGE_TRACE drain appends=152000 acquire_wait_total_us=158622 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:16.9063794Z WEDGE_TRACE drain appends=154000 acquire_wait_total_us=160156 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:16.9064315Z WEDGE_TRACE drain appends=156000 acquire_wait_total_us=161661 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:16.9065287Z WEDGE_TRACE drain appends=158000 acquire_wait_total_us=163134 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:16.9065801Z WEDGE_TRACE drain appends=160000 acquire_wait_total_us=164607 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:16.9066339Z WEDGE_TRACE drain appends=162000 acquire_wait_total_us=165942 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:16.9066874Z WEDGE_TRACE drain appends=164000 acquire_wait_total_us=167264 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:16.9067389Z WEDGE_TRACE drain appends=166000 acquire_wait_total_us=168592 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:16.9067908Z WEDGE_TRACE drain appends=168000 acquire_wait_total_us=169925 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:16.9068420Z WEDGE_TRACE drain appends=170000 acquire_wait_total_us=171148 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:16.9068930Z WEDGE_TRACE drain appends=172000 acquire_wait_total_us=172481 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:16.9069564Z WEDGE_TRACE drain appends=174000 acquire_wait_total_us=173755 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:16.9070079Z WEDGE_TRACE drain appends=176000 acquire_wait_total_us=175101 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:16.9070761Z WEDGE_TRACE drain appends=178000 acquire_wait_total_us=176453 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:16.9071278Z WEDGE_TRACE drain appends=180000 acquire_wait_total_us=177828 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:16.9071783Z WEDGE_TRACE drain appends=182000 acquire_wait_total_us=179310 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:16.9072331Z WEDGE_TRACE drain appends=184000 acquire_wait_total_us=180631 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:16.9072876Z WEDGE_TRACE drain appends=186000 acquire_wait_total_us=181863 acquire_wait_max_us=51493 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:16.9073257Z WEDGE_TRACE conn_open drain_appends=186824 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:16.9073518Z WEDGE_TRACE conn_hello drain_appends=186824 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:16.9073873Z test a_journaled_input_wedge_does_not_starve_a_concurrent_rc_attach ... FAILED test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:16.9074355Z test result: FAILED. 0 passed; 1 failed; 0 ignored; 0 measured; 9 filtered out; finished in 20.62s test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:16.9079991Z FAIL [ 20.637s] (1/1) spt-daemon::inject_control_wedge a_journaled_input_wedge_does_not_starve_a_concurrent_rc_attach test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (isolated, quiet box, Linux) 2026-06-21T07:22:16.9080701Z FAIL [ 20.637s] (1/1) spt-daemon::inject_control_wedge a_journaled_input_wedge_does_not_starve_a_concurrent_rc_attach test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:16.9152650Z ##[group]Run cargo nextest run --workspace --no-fail-fast -E 'not ( (package(spt-daemon) & kind(test) & binary(/^(attach|brain_swap|broker|budget|daemon_e2e|daemon_lifecycle_real_brain|digest|dispatch|driven_by_selfheal|handoff|idempotent|inject_control_wedge|input_ack_deadlock|resume|shellchan|two_origin_spanning|twohost)$/)) | (package(spt) & kind(test) & binary(/^(attach_wedge_e2e|bind_cwd_project_e2e|brain_respawn_rename|brain_restart_psyche_dup_e2e|brain_split|brain_survive|dummy_harness_e2e|gateway_owner_shell_e2e|job_escape_e2e|livehost_bootgate_e2e|livehost_bootrace_e2e|livehost_nonresident_e2e|livehost_psyche_fail_e2e|n1_pairing|oneliner_e2e|resume_template_e2e|unhost_psyche_reap_e2e)$/)) | (package(spt-term) & kind(test)) )' test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:16.9157395Z cargo nextest run --workspace --no-fail-fast -E 'not ( (package(spt-daemon) & kind(test) & binary(/^(attach|brain_swap|broker|budget|daemon_e2e|daemon_lifecycle_real_brain|digest|dispatch|driven_by_selfheal|handoff|idempotent|inject_control_wedge|input_ack_deadlock|resume|shellchan|two_origin_spanning|twohost)$/)) | (package(spt) & kind(test) & binary(/^(attach_wedge_e2e|bind_cwd_project_e2e|brain_respawn_rename|brain_restart_psyche_dup_e2e|brain_split|brain_survive|dummy_harness_e2e|gateway_owner_shell_e2e|job_escape_e2e|livehost_bootgate_e2e|livehost_bootrace_e2e|livehost_nonresident_e2e|livehost_psyche_fail_e2e|n1_pairing|oneliner_e2e|resume_template_e2e|unhost_psyche_reap_e2e)$/)) | (package(spt-term) & kind(test)) )' test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:16.9448881Z shell: /usr/bin/bash -e {0} test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:16.9449235Z env: test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:16.9449448Z RUSTFLAGS: -C link-arg=-fuse-ld=mold test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:16.9449677Z ##[endgroup] test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:17.9818109Z Compiling jobserver v0.1.34 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:17.9818544Z Compiling mio v1.2.1 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:17.9904622Z Compiling strsim v0.11.1 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:17.9953226Z Compiling fs_extra v1.3.0 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:17.9990161Z Compiling dunce v1.0.5 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:17.9991675Z Compiling rustix v1.1.4 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:18.0059194Z Compiling aws-lc-rs v1.17.0 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:18.0091376Z Compiling unicode-segmentation v1.13.3 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:18.0174118Z Compiling rustls v0.23.40 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:18.0251692Z Compiling either v1.16.0 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:18.0502501Z Compiling errno v0.3.14 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:18.0503373Z Compiling signal-hook v0.3.18 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:18.0508913Z Compiling utf8parse v0.2.2 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:18.0510221Z Compiling rustix v0.38.44 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:18.0510658Z Compiling is_terminal_polyfill v1.70.2 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:18.0511155Z Compiling linux-raw-sys v0.4.15 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:18.0681465Z Compiling colorchoice v1.0.5 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:18.1640180Z Compiling instability v0.3.12 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:18.1727772Z Compiling signal-hook-registry v1.4.8 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:18.1736364Z Compiling anstyle v1.0.14 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:18.2031704Z Compiling anstyle-parse v1.0.0 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:18.2141651Z Compiling darling_core v0.20.11 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:18.2313041Z Compiling darling_core v0.23.0 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:18.2610723Z Compiling cc v1.2.63 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:18.2830681Z Compiling prefix-trie v0.8.4 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:18.2870592Z Compiling foldhash v0.1.5 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:18.3390847Z Compiling anstyle-query v1.1.5 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:18.4081073Z Compiling tokio v1.52.3 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:18.4240361Z Compiling itertools v0.13.0 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:18.5167009Z Compiling anstream v1.0.0 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:18.5258746Z Compiling hashbrown v0.15.5 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:18.5427393Z Compiling strum_macros v0.26.4 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:18.5671693Z Compiling castaway v0.2.4 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:18.5711196Z Compiling clap_lex v1.1.0 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:18.6778914Z Compiling convert_case v0.10.0 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:18.6970586Z Compiling signal-hook-mio v0.2.5 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:18.7552099Z Compiling unicode-width v0.1.14 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:18.8026179Z Compiling static_assertions v1.1.0 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:18.8150520Z Compiling indoc v2.0.7 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:18.8224543Z Compiling clap_derive v4.6.1 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:18.8750698Z Compiling compact_str v0.8.2 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:18.9399469Z Compiling cassowary v0.3.0 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:19.0292129Z Compiling unicode-width v0.2.0 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:19.0840727Z Compiling derive_more-impl v2.1.1 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:19.1726350Z Compiling hickory-proto v0.26.0-beta.4 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:19.3251033Z Compiling iana-time-zone v0.1.65 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:19.3590603Z Compiling lru v0.12.5 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:19.4670686Z Compiling crossterm v0.28.1 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:19.5420183Z Compiling chrono v0.4.45 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:19.6690897Z Compiling nucleo-matcher v0.3.1 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:19.6880555Z Compiling qrcode v0.14.1 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:19.7470458Z Compiling cmake v0.1.58 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:19.8971027Z Compiling spt-proto v0.12.1 (/home/reavus/actions-runner/_work/spt-core/spt-core/crates/spt-proto) test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:20.2327807Z Compiling mock-adapter v0.12.1 (/home/reavus/actions-runner/_work/spt-core/spt-core/adapters/mock) test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:20.6750723Z Compiling unicode-truncate v1.1.0 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:20.7060594Z Compiling libsqlite3-sys v0.30.1 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:20.8126671Z Compiling aws-lc-sys v0.41.0 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:20.8540832Z Compiling ring v0.17.14 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:21.0230716Z Compiling blake3 v1.8.5 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:21.1916678Z Compiling strum v0.26.3 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:21.3170854Z Compiling tempfile v3.27.0 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:21.3291145Z Compiling terminal_size v0.4.4 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:21.4842722Z Compiling clap_builder v4.6.0 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:21.6050870Z Compiling darling_macro v0.20.11 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:21.8180493Z Compiling darling_macro v0.23.0 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:21.9330566Z Compiling darling v0.20.11 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:21.9771009Z Compiling derive_builder_core v0.20.2 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:22.1541139Z Compiling darling v0.23.0 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:22.4927834Z Compiling derive_more v2.1.1 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:22.5941555Z Compiling iroh-base v0.98.0 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:22.7431168Z Compiling ratatui v0.29.0 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:22.9486184Z Compiling derive_builder_macro v0.20.2 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:23.1410928Z Compiling derive_builder v0.20.2 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:23.1968756Z Compiling vergen-lib v9.1.0 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:23.1969489Z Compiling vergen-lib v0.1.6 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:23.3530135Z Compiling vergen v9.1.0 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:23.3932473Z Compiling vergen-gitcl v1.0.8 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:23.7133552Z Compiling iroh-relay v0.98.0 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:23.8153194Z Compiling tokio-util v0.7.18 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:23.8155583Z Compiling netlink-sys v0.8.8 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:23.8156452Z Compiling tower v0.5.3 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:23.8156866Z Compiling acto v0.8.2 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:23.8205569Z Compiling backon v1.6.0 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:23.8980256Z Compiling clap v4.6.1 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:24.1941363Z Compiling netlink-proto v0.12.0 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:24.1968571Z Compiling netdev v0.42.0 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:24.6310552Z Compiling tower-http v0.6.11 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:24.6400846Z Compiling swarm-discovery v0.6.0-alpha.2 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:25.0040444Z Compiling h2 v0.4.14 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:25.0360712Z Compiling n0-future v0.3.2 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:25.0361427Z Compiling tokio-stream v0.1.18 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:25.1709205Z Compiling n0-watcher v0.6.1 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:25.1939401Z Compiling iroh-dns v0.98.0 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:25.4296980Z Compiling netwatch v0.16.0 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:29.4498193Z Compiling hyper v1.10.1 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:29.9254193Z Compiling rusqlite v0.32.1 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:30.3853953Z Compiling hyper-util v0.1.20 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:30.4461051Z Compiling spt-store v0.12.1 (/home/reavus/actions-runner/_work/spt-core/spt-core/crates/spt-store) test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:31.3069415Z Compiling igd-next v0.17.1 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:31.8280059Z Compiling spt-msg v0.12.1 (/home/reavus/actions-runner/_work/spt-core/spt-core/crates/spt-msg) test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:31.9528724Z Compiling portmapper v0.16.0 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:31.9879460Z Compiling spt-runtime v0.12.1 (/home/reavus/actions-runner/_work/spt-core/spt-core/crates/spt-runtime) test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:31.9881017Z Compiling spt-term v0.12.1 (/home/reavus/actions-runner/_work/spt-core/spt-core/crates/spt-term) test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:33.4770395Z Compiling rustls-webpki v0.103.13 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:34.9219171Z Compiling spt-live v0.12.1 (/home/reavus/actions-runner/_work/spt-core/spt-core/crates/spt-live) test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:37.7583848Z Compiling tokio-rustls v0.26.4 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:37.7584534Z Compiling rustls-platform-verifier v0.7.0 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:37.7585196Z Compiling noq-proto v0.17.0 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:37.9052173Z Compiling hickory-net v0.26.0-beta.4 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:37.9052885Z Compiling hyper-rustls v0.27.9 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:37.9053451Z Compiling tokio-websockets v0.13.2 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:38.1063015Z Compiling reqwest v0.13.4 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:38.9879890Z Compiling hickory-resolver v0.26.0-beta.4 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:41.3025212Z Compiling noq v0.18.0 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:44.9993370Z Compiling iroh v0.98.2 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:52.9261110Z Compiling spt-net v0.12.1 (/home/reavus/actions-runner/_work/spt-core/spt-core/crates/spt-net) test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:22:54.4440376Z Compiling spt-daemon v0.12.1 (/home/reavus/actions-runner/_work/spt-core/spt-core/crates/spt-daemon) test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:03.1458195Z Compiling spt v0.12.1 (/home/reavus/actions-runner/_work/spt-core/spt-core/crates/spt) test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:23:10.7156505Z Compiling xtask v0.12.1 (/home/reavus/actions-runner/_work/spt-core/spt-core/crates/xtask) test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:45.7318699Z Finished `test` profile [unoptimized + debuginfo] target(s) in 2m 28s test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:45.9720456Z ──────────── test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:45.9721901Z Nextest run ID 9bf1859d-86b1-434f-825d-f83c534ecc56 with nextest profile: default test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:45.9722855Z Starting 1156 tests across 48 binaries (1 test and 39 binaries skipped) test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:45.9802155Z PASS [ 0.009s] ( 1/1156) spt::notify_shell_e2e notify_shell_renders_a_commanded_toast test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:45.9884750Z PASS [ 0.018s] ( 2/1156) mock-adapter::manifest_valid mock_declares_commune_signoff_as_filedrops test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:45.9885664Z PASS [ 0.018s] ( 3/1156) mock-adapter::manifest_valid mock_has_no_claude_code_conventions test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:45.9886551Z PASS [ 0.018s] ( 4/1156) mock-adapter::manifest_valid mock_manifest_parses_and_validates test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:45.9931869Z PASS [ 0.005s] ( 5/1156) spt::release_verify_e2e published_release_verifies_against_embedded_anchor test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:46.1239542Z PASS [ 0.144s] ( 6/1156) spt::ready_resume_ledger_e2e ready_bind_ledgers_and_reconcile_hosts_no_psyche test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:46.1308902Z PASS [ 0.161s] ( 7/1156) spt::live_bind_firsthost_e2e live_bind_marks_online_and_brain_reconcile_hosts test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:46.1396101Z PASS [ 0.009s] ( 8/1156) spt::bin/spt api::auth::tests::mints_distinct_nonempty_tokens test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:46.1478665Z PASS [ 0.008s] ( 9/1156) spt::bin/spt api::auth::tests::missing_endpoint_is_no_endpoint test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:46.1565260Z PASS [ 0.008s] ( 10/1156) spt::bin/spt api::auth::tests::no_proof_is_refused test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:46.1652527Z PASS [ 0.009s] ( 11/1156) spt::bin/spt api::auth::tests::session_id_proof_authenticates test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:46.1739638Z PASS [ 0.009s] ( 12/1156) spt::bin/spt api::auth::tests::token_proof_authenticates test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:46.1840629Z PASS [ 0.010s] ( 13/1156) spt::bin/spt api::auth::tests::wrong_token_and_wrong_session_refused test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:46.1980531Z PASS [ 0.014s] ( 14/1156) spt::bin/spt api::delivery::tests::echo_gate_explicit_toggle test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:46.2093113Z PASS [ 0.011s] ( 15/1156) spt::bin/spt api::delivery::tests::idle_busy_transitions_manage_sentinels test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:46.2185685Z PASS [ 0.009s] ( 16/1156) spt::bin/spt api::delivery::tests::idle_no_gate_does_not_arm_gate test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:46.2272527Z PASS [ 0.009s] ( 17/1156) spt::bin/spt api::delivery::tests::inject_all_pty_falls_back_to_hook test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:46.2363357Z PASS [ 0.009s] ( 18/1156) spt::bin/spt api::delivery::tests::inject_resolution_drops_pty_defaults_hook test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:46.2399587Z PASS [ 0.270s] ( 19/1156) spt::drive_e2e drive_channel_slot_through_the_real_socket test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:46.2431567Z PASS [ 0.273s] ( 20/1156) spt::contract_e2e mock_adapter_drives_the_full_contract test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:46.4817500Z PASS [ 0.238s] ( 21/1156) spt::bin/spt api::reporting::tests::boundary_appends_to_the_session_ledger test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:46.8520547Z PASS [ 0.863s] ( 22/1156) spt::shell_actgate_e2e act_gate_blocks_command_until_class_scoped_grant test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:46.8532083Z PASS [ 0.883s] ( 23/1156) spt::contract_e2e seed_then_listen_binds_and_relays test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:46.8612420Z PASS [ 0.009s] ( 24/1156) spt::bin/spt api::reporting::tests::boundary_missing_perch_refused test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:46.8630235Z PASS [ 0.874s] ( 25/1156) spt::shell_e2e mock_shell_binary_drives_the_full_link test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:46.8710491Z PASS [ 0.008s] ( 26/1156) spt::bin/spt api::reporting::tests::capability_lists_hostable_types test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:46.8768288Z PASS [ 0.906s] ( 27/1156) spt::live_firsthost_e2e live_listen_marks_online_and_brain_reconcile_hosts test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:46.8806232Z PASS [ 0.009s] ( 28/1156) spt::bin/spt api::reporting::tests::digest_entry_validates_and_appends_to_digest_log test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:46.8864385Z PASS [ 0.010s] ( 29/1156) spt::bin/spt api::reporting::tests::driven_by_reads_daemon_marker test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:46.8883649Z PASS [ 0.918s] ( 30/1156) spt::gateway_e2e gateway_binds_and_is_the_user_backed_origin test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:46.8895731Z PASS [ 0.009s] ( 31/1156) spt::bin/spt api::reporting::tests::env_aliases_resolved_from_manifest test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:46.8948382Z PASS [ 0.008s] ( 32/1156) spt::bin/spt api::reporting::tests::filedrops_are_fixed_named_files test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:46.8970736Z PASS [ 0.009s] ( 33/1156) spt::bin/spt api::reporting::tests::hint_once_per_session_one_per_message test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:46.8971541Z PASS [ 0.007s] ( 34/1156) spt::bin/spt api::reporting::tests::history_log_appends test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:46.9029871Z PASS [ 0.008s] ( 35/1156) spt::bin/spt api::reporting::tests::presence_records_endpoint test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:46.9060452Z PASS [ 0.009s] ( 36/1156) spt::bin/spt api::reporting::tests::session_end_erase_refused_with_live_children test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:46.9230601Z PASS [ 0.017s] ( 37/1156) spt::bin/spt api::startup::tests::bind_assigns_home_and_revive_preserves_it test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:46.9313586Z PASS [ 0.078s] ( 38/1156) spt::bin/spt api::reporting::tests::boundary_rebinds_keeping_anchor test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:46.9350309Z PASS [ 0.695s] ( 39/1156) spt::bin/spt api::delivery::tests::poll_drains_non_deferred_by_default test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:46.9353690Z PASS [ 0.699s] ( 40/1156) spt::bin/spt api::delivery::tests::poll_drain_holds_deferred_while_resting_and_releases_once_on_wake test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:46.9493084Z PASS [ 0.014s] ( 41/1156) spt::bin/spt api::startup::tests::empty_session_seed_refused test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:46.9606123Z PASS [ 0.063s] ( 42/1156) spt::bin/spt api::reporting::tests::session_end_erase_wipes_childless_perch test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:46.9640420Z PASS [ 0.015s] ( 43/1156) spt::bin/spt api::startup::tests::live_perch_under_other_session_conflicts test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:46.9677993Z PASS [ 0.065s] ( 44/1156) spt::bin/spt api::reporting::tests::session_end_soft_preserves_state test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:46.9757097Z PASS [ 0.015s] ( 45/1156) spt::bin/spt api::startup::tests::missing_seed_refused test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:46.9991834Z PASS [ 0.068s] ( 46/1156) spt::bin/spt api::startup::tests::bind_with_type_establishes_a_gateway_endpoint test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.0060824Z PASS [ 0.083s] ( 47/1156) spt::bin/spt api::startup::tests::bind_records_cwd_so_picker_can_group_by_project test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.0133930Z PASS [ 0.078s] ( 48/1156) spt::bin/spt api::startup::tests::establish_stamps_controllable_by_hosting_mode test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.0143726Z PASS [ 0.008s] ( 49/1156) spt::bin/spt api::startup::tests::seed_fail_eof_gives_actionable_stale_broker_hint test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.0152242Z PASS [ 0.016s] ( 50/1156) spt::bin/spt api::startup::tests::seed_bind_records_seed_captured_cwd test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.0224715Z PASS [ 0.541s] ( 51/1156) spt::bin/spt api::reporting::tests::boundary_injects_deferred_shell_context test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.0237394Z PASS [ 0.010s] ( 52/1156) spt::bin/spt api::startup::tests::stale_seed_with_dead_anchor_refused test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.0254972Z PASS [ 0.010s] ( 53/1156) spt::bin/spt api::tests::adapter_is_optional test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.0315389Z PASS [ 0.017s] ( 54/1156) spt::bin/spt api::startup::tests::valid_seed_binds_live_perch test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.0316103Z PASS [ 1.061s] ( 55/1156) spt::poll_envelope_e2e api_poll_emits_whole_self_delimiting_events test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.0343061Z PASS [ 0.012s] ( 56/1156) spt::bin/spt api::tests::ctx_manifest_override_wins_when_manifest_present test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.0348188Z PASS [ 0.009s] ( 57/1156) spt::bin/spt api::tests::ctx_manifest_unregistered_no_manifest_is_none_not_fatal test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.0371283Z PASS [ 0.073s] ( 58/1156) spt::bin/spt api::startup::tests::post_spawn_bind_establishes_perch test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.0372334Z PASS [ 0.013s] ( 59/1156) spt::bin/spt api::tests::ctx_manifest_resolves_from_registry_when_manifest_absent test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.0450948Z PASS [ 0.075s] ( 60/1156) spt::bin/spt api::startup::tests::rebind_same_session_ok test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.0451826Z PASS [ 0.012s] ( 61/1156) spt::bin/spt api::tests::state_value_is_validated test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.0465346Z PASS [ 0.014s] ( 62/1156) spt::bin/spt api::tests::load_manifest_resolves_composite_adapter_option test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.0476813Z PASS [ 0.012s] ( 63/1156) spt::bin/spt api::worker::tests::cascade_guard_tracks_live_children test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.0528278Z PASS [ 0.016s] ( 64/1156) spt::bin/spt api::worker::tests::guard_clears_only_when_all_children_stopped test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.0529388Z PASS [ 0.018s] ( 65/1156) spt::bin/spt api::tests::surface_parses test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.0537529Z PASS [ 0.078s] ( 66/1156) spt::bin/spt api::startup::tests::revive_without_cwd_preserves_prior_cwd test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.0554283Z PASS [ 0.012s] ( 67/1156) spt::bin/spt api::worker::tests::worker_start_nests_under_parent test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.0617883Z PASS [ 0.016s] ( 68/1156) spt::bin/spt cli::tests::access_subcommands_parse test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.0667282Z PASS [ 0.013s] ( 69/1156) spt::bin/spt cli::tests::adapter_string_verbs test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.0670083Z PASS [ 0.014s] ( 70/1156) spt::bin/spt cli::tests::adapter_profile_verbs_local_only test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.0694958Z PASS [ 0.014s] ( 71/1156) spt::bin/spt cli::tests::adapter_subcommands_parse test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.0711560Z PASS [ 1.101s] ( 72/1156) spt::quickstart_e2e published_messaging_quickstart_runs_as_written test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.0726198Z PASS [ 1.102s] ( 73/1156) spt::contract_e2e cold_api_call_autostarts_daemon_and_handoff_is_in_memory test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.0726867Z PASS [ 0.011s] ( 74/1156) spt::bin/spt cli::tests::adapter_use_sets_and_clears_pointer test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.0776070Z PASS [ 0.011s] ( 75/1156) spt::bin/spt cli::tests::applied_message_renders_semver_or_counter_fallback_and_states_applied test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.0784402Z PASS [ 0.011s] ( 76/1156) spt::bin/spt cli::tests::apply_user_msg_gate_local_origination test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.0801687Z PASS [ 0.009s] ( 77/1156) spt::bin/spt cli::tests::bare_tty_guard test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.0828686Z PASS [ 0.010s] ( 78/1156) spt::bin/spt cli::tests::connection_lines_net_less_hides_stale_heartbeat test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.0831056Z PASS [ 0.010s] ( 79/1156) spt::bin/spt cli::tests::create_existing_name_is_usage_error test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.0831834Z PASS [ 0.014s] ( 80/1156) spt::bin/spt cli::tests::bare_spt_parses_to_none test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.0882916Z PASS [ 0.010s] ( 81/1156) spt::bin/spt cli::tests::create_new_existing_name_is_usage_error test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.0883852Z PASS [ 1.118s] ( 82/1156) spt::contract_e2e live_agent_lifecycle_e2e test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.0888641Z PASS [ 0.965s] ( 83/1156) spt::tunnel_e2e shell_tunnel_round_trips_opaque_bytes_through_the_real_surfaces test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.0919727Z PASS [ 0.012s] ( 84/1156) spt::bin/spt cli::tests::create_not_elevated_refuses_without_saving test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.0942347Z PASS [ 0.011s] ( 85/1156) spt::bin/spt cli::tests::daemon_offline_hint_only_when_down test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.0983710Z PASS [ 0.010s] ( 86/1156) spt::bin/spt cli::tests::empty_store_no_flag_guides_to_pair_or_create test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.0987039Z PASS [ 0.010s] ( 87/1156) spt::bin/spt cli::tests::endpoint_list_subnet_rows_align_and_label test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.0998291Z PASS [ 0.012s] ( 88/1156) spt::bin/spt cli::tests::digest_flag_defaults test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.1015352Z PASS [ 0.018s] ( 89/1156) spt::bin/spt cli::tests::daemon_subcommands_parse test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.1030612Z PASS [ 0.024s] ( 90/1156) spt::bin/spt cli::tests::create_new_mints_shows_and_requests_save test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.1032132Z PASS [ 0.056s] ( 91/1156) spt::bin/spt cli::tests::adapter_digest_proof_fills_session_id_key test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.1085209Z PASS [ 0.025s] ( 92/1156) spt::bin/spt cli::tests::create_prints_joining_material_when_elevated test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.1108657Z PASS [ 0.016s] ( 93/1156) spt::bin/spt cli::tests::endpoint_role_parses test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.1109634Z PASS [ 0.058s] ( 94/1156) spt::bin/spt cli::tests::adapter_digest_proof_gates_on_drops test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.1110503Z PASS [ 0.011s] ( 95/1156) spt::bin/spt cli::tests::escalation_choice_parses_fail_closed test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.1157874Z PASS [ 0.013s] ( 96/1156) spt::bin/spt cli::tests::gh_release_version_compare_decision test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.1206337Z PASS [ 0.017s] ( 97/1156) spt::bin/spt cli::tests::grant_subcommands_parse test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.1237397Z PASS [ 0.025s] ( 98/1156) spt::bin/spt cli::tests::endpoint_subcommands_parse test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.1238379Z PASS [ 0.013s] ( 99/1156) spt::bin/spt cli::tests::invalid_usage_errors test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.1261450Z PASS [ 0.018s] ( 100/1156) spt::bin/spt cli::tests::help_groups_cover_every_command test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.1262366Z PASS [ 0.015s] ( 101/1156) spt::bin/spt cli::tests::how_to_topics_cover_ready_and_send test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.1270468Z PASS [ 0.011s] ( 102/1156) spt::bin/spt cli::tests::join_gate_refuses_without_confirmed_elevation test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.1315505Z PASS [ 0.020s] ( 103/1156) spt::bin/spt cli::tests::hot_path_flat_and_moved_verbs_gone test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.1316499Z PASS [ 0.011s] ( 104/1156) spt::bin/spt cli::tests::local_section_always_renders_local_perches test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.1343417Z PASS [ 0.011s] ( 105/1156) spt::bin/spt cli::tests::node_level_label_names_an_endpointless_peer test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.1367611Z PASS [ 0.011s] ( 106/1156) spt::bin/spt cli::tests::node_rows_disambiguate_only_on_label_collision test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.1373347Z PASS [ 0.011s] ( 107/1156) spt::bin/spt cli::tests::node_status_rows_settle_cheap_signals_probe_only_stale test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.1374616Z PASS [ 0.010s] ( 108/1156) spt::bin/spt cli::tests::not_elevated_refuses_without_leaking_code_or_saving test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.1434802Z PASS [ 0.011s] ( 109/1156) spt::bin/spt cli::tests::notify_subnet_resolution_home_default test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.1435887Z PASS [ 0.282s] ( 110/1156) spt::bin/spt api::reporting::tests::boundary_resurfaces_undismissed_notifs test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.1455574Z PASS [ 0.011s] ( 111/1156) spt::bin/spt cli::tests::origin_set_and_asset_urls_latest_and_tag test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.1466520Z PASS [ 0.023s] ( 112/1156) spt::bin/spt cli::tests::multi_subnet_refuses_without_flag_then_resolves_with_it test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.1472992Z PASS [ 0.010s] ( 113/1156) spt::bin/spt cli::tests::poll_online_fastpath_timeout_and_later_success test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.1473860Z PASS [ 0.016s] ( 114/1156) spt::bin/spt cli::tests::notify_surface_parses test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.1522122Z PASS [ 0.015s] ( 115/1156) spt::bin/spt cli::tests::pair_namespace_is_gone test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.1578340Z PASS [ 0.011s] ( 116/1156) spt::bin/spt cli::tests::prune_candidates_resolve_never_guess test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.1582562Z PASS [ 0.011s] ( 117/1156) spt::bin/spt cli::tests::purge_offline_gate_and_self_guard test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.1639612Z PASS [ 0.121s] ( 118/1156) spt::bin/spt api::worker::tests::worker_poll_holds_deferred_while_resting test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.1672930Z PASS [ 0.069s] ( 119/1156) spt::bin/spt cli::tests::endpoint_stop_marks_offline test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.1678284Z PASS [ 0.010s] ( 120/1156) spt::bin/spt cli::tests::ring_timeout_defaults test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.1722408Z PASS [ 0.008s] ( 121/1156) spt::bin/spt cli::tests::self_pin_annotates_psyche_host_failure test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.1750427Z PASS [ 0.008s] ( 122/1156) spt::bin/spt cli::tests::self_pin_includes_description_when_present test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.1769619Z PASS [ 0.009s] ( 123/1156) spt::bin/spt cli::tests::send_target_optional_with_reply_to test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.1834179Z PASS [ 0.011s] ( 124/1156) spt::bin/spt cli::tests::send_user_msg_flag_parses test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.1893389Z PASS [ 1.219s] ( 125/1156) spt::n1_compat brain_accepts_old_and_new_broker_argv test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.1904035Z PASS [ 0.014s] ( 126/1156) spt::bin/spt cli::tests::shell_owner_exclusivity_negatives test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.1968226Z PASS [ 0.013s] ( 127/1156) spt::bin/spt cli::tests::shell_relink_relaunches_offline_instances_only test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.2050908Z PASS [ 0.053s] ( 128/1156) spt::bin/spt cli::tests::release_archive_extracts_to_a_registrable_root test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.2091878Z PASS [ 0.019s] ( 129/1156) spt::bin/spt cli::tests::shell_spawn_cap_and_over_cap_gates test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.2170962Z PASS [ 0.059s] ( 130/1156) spt::bin/spt cli::tests::run_bounded_yields_value_or_timeout_default test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.2223181Z PASS [ 0.017s] ( 131/1156) spt::bin/spt cli::tests::shell_spawn_profiled_option_resolves_and_shares_cap test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.2229796Z PASS [ 0.186s] ( 132/1156) spt::bin/spt api::worker::tests::worker_poll_drains_spool test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.2253788Z PASS [ 0.016s] ( 133/1156) spt::bin/spt cli::tests::shell_subcommands_parse test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.2334438Z PASS [ 0.011s] ( 134/1156) spt::bin/spt cli::tests::shutdown_soft_stops_and_suspends test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.2373714Z PASS [ 0.020s] ( 135/1156) spt::bin/spt cli::tests::show_code_prints_reprovisioning_material test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.2446881Z PASS [ 0.022s] ( 136/1156) spt::bin/spt cli::tests::single_subnet_auto_selects_and_code_matches_seed test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.2472651Z PASS [ 0.012s] ( 137/1156) spt::bin/spt cli::tests::subcommands_parse test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.2537796Z PASS [ 0.009s] ( 138/1156) spt::bin/spt cli::tests::subnet_status_renders_rows_and_hints_never_secrets test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.2546417Z PASS [ 0.009s] ( 139/1156) spt::bin/spt cli::tests::subnets_joined_banner_renders_rows_and_divider test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.2566507Z PASS [ 0.019s] ( 140/1156) spt::bin/spt cli::tests::subnet_arg_shapes_parse test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.2630222Z PASS [ 0.009s] ( 141/1156) spt::bin/spt cli::tests::trust_mutation_gate_refuses_without_confirmed_elevation test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.2631607Z PASS [ 0.008s] ( 142/1156) spt::bin/spt cli::tests::unknown_elevation_falls_back test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.2656219Z PASS [ 0.009s] ( 143/1156) spt::bin/spt cli::tests::unknown_named_subnet_is_usage_error test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.2713582Z PASS [ 0.008s] ( 144/1156) spt::bin/spt elevation::tests::already_elevated_short_circuits_on_every_os test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.2729877Z PASS [ 0.010s] ( 145/1156) spt::bin/spt cli::tests::whoami_is_an_endpoint_list_alias test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.2733908Z PASS [ 0.008s] ( 146/1156) spt::bin/spt elevation::tests::current_returns_a_determinate_level_on_supported_platforms test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.2739688Z PASS [ 1.304s] ( 147/1156) spt::live_resolve_e2e listen_without_adapter_resolves_from_host_binaries test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.2755641Z PASS [ 0.184s] ( 148/1156) spt::bin/spt cli::tests::endpoint_role_overwrite_is_the_sole_writer test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.2809798Z PASS [ 0.009s] ( 149/1156) spt::bin/spt elevation::tests::fallback_message_names_authenticator_app_and_subnet test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.2813838Z PASS [ 0.008s] ( 150/1156) spt::bin/spt elevation::tests::gate_shows_only_when_confirmed_elevated test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.2821994Z PASS [ 0.008s] ( 151/1156) spt::bin/spt elevation::tests::launchers_never_shell_interpolate_a_crafted_arg test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.2823080Z PASS [ 0.009s] ( 152/1156) spt::bin/spt elevation::tests::launcher_argv_is_absolute_exe_plus_verbatim_args test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.2852627Z PASS [ 0.010s] ( 153/1156) spt::bin/spt elevation::tests::print_hint_floor_uses_absolute_path_each_os test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.2900388Z PASS [ 0.009s] ( 154/1156) spt::bin/spt elevation::tests::unix_path_order_tty_then_pkexec_then_terminal_then_hint test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.2901563Z PASS [ 0.008s] ( 155/1156) spt::bin/spt helpfmt::tests::atx_header_at_line_start_strips_and_bolds test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.2902536Z PASS [ 0.008s] ( 156/1156) spt::bin/spt elevation::tests::windows_uac_only_interactive_other_always_prints test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.2909633Z PASS [ 0.009s] ( 157/1156) spt::bin/spt helpfmt::tests::bold_styles_with_color_and_strips_without test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.2955743Z PASS [ 0.010s] ( 158/1156) spt::bin/spt helpfmt::tests::code_styles_with_color_and_strips_without test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.2986707Z PASS [ 0.009s] ( 159/1156) spt::bin/spt helpfmt::tests::dual_contract_token_unstyled_while_prose_styles_on_color test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.2987784Z PASS [ 0.009s] ( 160/1156) spt::bin/spt helpfmt::tests::dual_contract_token_survives_strip_mode test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.2988680Z PASS [ 0.008s] ( 161/1156) spt::bin/spt helpfmt::tests::empty_and_unmatched_markers_stay_literal test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.2989557Z PASS [ 0.009s] ( 162/1156) spt::bin/spt helpfmt::tests::color_enabled_truth_table test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.3064461Z PASS [ 0.010s] ( 163/1156) spt::bin/spt helpfmt::tests::link_becomes_its_text test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.3072107Z PASS [ 0.008s] ( 164/1156) spt::bin/spt helpfmt::tests::nested_code_inside_bold_styles_both test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.3073070Z PASS [ 0.009s] ( 165/1156) spt::bin/spt helpfmt::tests::marker_never_spans_a_hard_break test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.3073971Z PASS [ 0.009s] ( 166/1156) spt::bin/spt helpfmt::tests::marker_spans_a_clap_soft_wrap test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.3074745Z PASS [ 0.009s] ( 167/1156) spt::bin/spt helpfmt::tests::multibyte_text_survives test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.3078386Z PASS [ 0.162s] ( 168/1156) spt::bin/spt cli::tests::probe_all_timeout_settles_false_without_stalling_batch test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.3165148Z PASS [ 0.008s] ( 169/1156) spt::bin/spt picker::model::tests::adapter_tree_nests_profiles test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.3166225Z PASS [ 0.011s] ( 170/1156) spt::bin/spt helpfmt::tests::plain_text_is_unchanged test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.3170169Z PASS [ 0.009s] ( 171/1156) spt::bin/spt helpfmt::tests::preexisting_ansi_is_passed_through_untouched test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.3172110Z PASS [ 0.009s] ( 172/1156) spt::bin/spt picker::data::tests::driven_by_display_renders_name_not_hex test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.3173283Z PASS [ 0.009s] ( 173/1156) spt::bin/spt picker::data::tests::origin_project_unions_into_membership test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.3174084Z PASS [ 0.010s] ( 174/1156) spt::bin/spt picker::data::tests::reconcile_overrides_subnet_with_local_roster test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.3262847Z PASS [ 0.009s] ( 175/1156) spt::bin/spt picker::model::tests::category_ring_wraps test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.3263735Z PASS [ 0.009s] ( 176/1156) spt::bin/spt picker::model::tests::create_outcome_bakes_run test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.3264368Z PASS [ 0.009s] ( 177/1156) spt::bin/spt picker::model::tests::confirm_terminal_routes test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.3350577Z PASS [ 0.010s] ( 178/1156) spt::bin/spt picker::model::tests::back_unwinds test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.3351675Z PASS [ 0.009s] ( 179/1156) spt::bin/spt picker::model::tests::cursor_clamps test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.3352486Z PASS [ 0.010s] ( 180/1156) spt::bin/spt picker::model::tests::confirm_options_status_dependent test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.3365489Z PASS [ 0.010s] ( 181/1156) spt::bin/spt picker::model::tests::reenter_create_keeps_or_clears_id test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.3367768Z PASS [ 0.010s] ( 182/1156) spt::bin/spt picker::model::tests::prefill_jumps_to_create test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.3368467Z PASS [ 0.010s] ( 183/1156) spt::bin/spt picker::model::tests::resume_outcome_bakes_session test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.3369236Z PASS [ 0.011s] ( 184/1156) spt::bin/spt picker::model::tests::filter_narrows test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.3370301Z PASS [ 0.011s] ( 185/1156) spt::bin/spt picker::model::tests::display_status_four_state_type_gated test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.3372328Z PASS [ 0.011s] ( 186/1156) spt::bin/spt picker::model::tests::kind_routes test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.3459099Z PASS [ 0.009s] ( 187/1156) spt::bin/spt picker::model::tests::status_square_is_online_offline_only test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.3460402Z PASS [ 0.009s] ( 188/1156) spt::bin/spt picker::shortcut::tests::bakes_create_attach_by_default test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.3461460Z PASS [ 0.009s] ( 189/1156) spt::bin/spt picker::model::tests::visible_partitions_and_sorts test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.3462481Z PASS [ 0.009s] ( 190/1156) spt::bin/spt picker::shortcut::tests::basename_is_parameterized test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.3463185Z PASS [ 0.009s] ( 191/1156) spt::bin/spt picker::shortcut::tests::bakes_resume_and_action test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.3464024Z PASS [ 0.010s] ( 192/1156) spt::bin/spt picker::model::tests::resume_title_render test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.3482690Z PASS [ 0.123s] ( 193/1156) spt::bin/spt cli::tests::spt_hosted_no_relay_detection test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.3562754Z PASS [ 0.010s] ( 194/1156) spt::bin/spt picker::shortcut::tests::sentinel_detection test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.3564142Z PASS [ 0.213s] ( 195/1156) spt::bin/spt cli::tests::probe_all_runs_concurrently_in_input_order test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.3565181Z PASS [ 0.011s] ( 196/1156) spt::bin/spt picker::shortcut::tests::write_create_update_refuse test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.3594535Z PASS [ 0.013s] ( 197/1156) spt::bin/spt picker::view::tests::adapter_tree_buffer test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.3596100Z PASS [ 0.014s] ( 198/1156) spt::bin/spt picker::view::tests::kind_buffer test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.3605978Z PASS [ 0.014s] ( 199/1156) spt::bin/spt picker::view::tests::confirm_buffer_options test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.3608263Z PASS [ 0.013s] ( 200/1156) spt::bin/spt picker::view::tests::pick_empty_category_hint test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.3612805Z PASS [ 0.015s] ( 201/1156) spt::bin/spt picker::view::tests::pick_buffer_has_squares_and_description test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.3709770Z PASS [ 0.010s] ( 202/1156) spt::bin/spt rc::tests::first_event_stall_decision test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.3710700Z PASS [ 0.011s] ( 203/1156) spt::bin/spt rc::tests::detach_keybind_semantics test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.3711545Z PASS [ 0.014s] ( 204/1156) spt::bin/spt rc::tests::attach_offline_endpoint_short_circuits_clean test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.3712385Z PASS [ 0.010s] ( 205/1156) spt::bin/spt rc::tests::detach_prefix_spans_chunks test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.3713636Z PASS [ 0.012s] ( 206/1156) spt::bin/spt rc::tests::classify_read_err_eof_is_graceful_not_fatal test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.3714589Z PASS [ 0.010s] ( 207/1156) spt::bin/spt rc::tests::mouse_mode_decset_scan_survives_split_across_chunks test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.3729157Z PASS [ 0.016s] ( 208/1156) spt::bin/spt picker::view::tests::resume_buffer_lists_sessions test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.3825875Z PASS [ 0.011s] ( 209/1156) spt::bin/spt rc::tests::op_minter_distinct_and_monotonic test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.3827156Z PASS [ 0.011s] ( 210/1156) spt::bin/spt wansend::tests::refusals_render_copy_paste_targets test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.3828379Z PASS [ 0.011s] ( 211/1156) spt::bin/spt rc::tests::mouse_mode_decset_scan_tracks_enable_and_sgr test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.3830888Z PASS [ 0.012s] ( 212/1156) spt::bin/spt wansend::tests::load_snapshots_degrades_on_junk test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.3831881Z PASS [ 0.027s] ( 213/1156) spt::bin/spt picker::view::tests::pick_status_line_four_state test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.3843378Z PASS [ 0.011s] ( 214/1156) spt-daemon access::tests::gate_decision_table test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.3904747Z PASS [ 0.008s] ( 215/1156) spt-daemon adapter_update::tests::delegated_attested_delegates_command test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.3910489Z PASS [ 0.009s] ( 216/1156) spt-daemon access::tests::reply_passes_where_unsolicited_refused test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.3912851Z PASS [ 0.009s] ( 217/1156) spt-daemon access::tests::same_node_always_passes_without_minting test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.3939883Z PASS [ 0.011s] ( 218/1156) spt-daemon adapter_update::tests::delegated_unattested_is_skipped test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.3995061Z PASS [ 0.008s] ( 219/1156) spt-daemon adapter_update::tests::gh_release_is_managed_cli_side_not_in_pure_plan test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.4049741Z PASS [ 0.017s] ( 220/1156) spt-daemon adapter_update::tests::file_pull_verified_against_adapter_key test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.4051215Z PASS [ 0.011s] ( 221/1156) spt-daemon adapter_update::tests::file_pull_without_payload_is_skipped test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.4052161Z PASS [ 0.018s] ( 222/1156) spt-daemon adapter_update::tests::file_pull_tampered_bytes_rejected test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.4111018Z PASS [ 0.019s] ( 223/1156) spt-daemon adapter_update::tests::file_pull_wrong_key_rejected test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.4178216Z PASS [ 0.016s] ( 224/1156) spt-daemon adapter_update::tests::ripple_registered_uses_the_registered_set test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.4181322Z PASS [ 0.023s] ( 225/1156) spt-daemon adapter_update::tests::ripple_conducts_each_adapter_in_order test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.4184976Z PASS [ 0.229s] ( 226/1156) spt::bin/spt cli::tests::shell_spawn_approval_floor_gates test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.4301415Z PASS [ 0.028s] ( 227/1156) spt-daemon applyhost::tests::apply_staged_refuses_a_quarantined_version test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.4368061Z PASS [ 0.035s] ( 228/1156) spt-daemon applyhost::tests::apply_staged_refuses_platform_blind_or_mismatched_single test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.4392067Z PASS [ 0.029s] ( 229/1156) spt-daemon applyhost::tests::apply_staged_swaps_binary_and_hands_off_without_touching_the_endpoint test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.4413249Z PASS [ 0.040s] ( 230/1156) spt-daemon applyhost::tests::apply_staged_gates_fail_closed_with_the_seat_untouched test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.4441300Z PASS [ 0.025s] ( 231/1156) spt-daemon applyhost::tests::apply_staged_without_broker_hosted_sessions_swaps_binary test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.4442628Z PASS [ 0.014s] ( 232/1156) spt-daemon applyhost::tests::brain_restart_verb_raises_the_supervisor_signal test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.4445916Z PASS [ 0.029s] ( 233/1156) spt-daemon applyhost::tests::apply_staged_update_set_refuses_broker_touching_payloads test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.4468125Z PASS [ 0.010s] ( 234/1156) spt-daemon brainproc::tests::appended_padding_flips_exe_hash test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.4471666Z PASS [ 0.030s] ( 235/1156) spt-daemon applyhost::tests::apply_staged_update_set_selects_local_platform_artifact test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.4490724Z PASS [ 0.010s] ( 236/1156) spt-daemon brainproc::tests::backoff_doubles_on_fast_death_resets_when_healthy test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.4503202Z PASS [ 0.009s] ( 237/1156) spt-daemon brainproc::tests::brain_child_args_carry_generation_and_reason test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.4539797Z PASS [ 0.010s] ( 238/1156) spt-daemon brainproc::tests::consumer_gate_spawns_once_when_net_enabled test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.4541059Z PASS [ 0.010s] ( 239/1156) spt-daemon brainproc::tests::bytes_gate_truth_table test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.4566726Z PASS [ 0.010s] ( 240/1156) spt-daemon brainproc::tests::planned_restart_respawns_with_update_reason test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.4568224Z PASS [ 0.009s] ( 241/1156) spt-daemon brainproc::tests::ready_but_wrong_bytes_rolls_back_never_promotes test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.4610963Z PASS [ 0.010s] ( 242/1156) spt-daemon brainproc::tests::ready_exe_hash_parses_and_is_n1_readable test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.4616430Z PASS [ 0.009s] ( 243/1156) spt-daemon brainproc::tests::ready_generation_at_reads_file_and_absent_is_none test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.4627681Z PASS [ 0.009s] ( 244/1156) spt-daemon brainproc::tests::ready_generation_parses_stamp_and_fails_safe test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.4651273Z PASS [ 0.008s] ( 245/1156) spt-daemon brainproc::tests::rollback_running_version_is_prior_not_n_minus_one test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.4656682Z PASS [ 0.009s] ( 246/1156) spt-daemon brainproc::tests::rolled_back_record_spawns_rollback_binary_on_a_fresh_supervisor test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.4676519Z PASS [ 0.009s] ( 247/1156) spt-daemon brainproc::tests::select_brain_exe_prefers_canonical_over_per_spawn_current_exe test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.4712100Z PASS [ 0.008s] ( 248/1156) spt-daemon brainproc::tests::start_reason_arg_round_trips_and_is_lenient test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.5383867Z PASS [ 0.363s] ( 249/1156) spt::bin/spt cli::tests::shell_channels_relay_sensory_and_text_file test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.5856890Z PASS [ 0.438s] ( 250/1156) spt::bin/spt cli::tests::purge_removes_every_record test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.5923064Z PASS [ 0.007s] ( 251/1156) spt-daemon broker::tests::advance_delivered_is_monotonic test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.5940202Z PASS [ 0.223s] ( 252/1156) spt::bin/spt wansend::tests::wan_send_ships_to_the_resolved_node test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.5995898Z PASS [ 0.007s] ( 253/1156) spt-daemon broker::tests::apply_once_enqueues_ptywrite_exactly_once_and_dedups_replay test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.6056869Z PASS [ 0.006s] ( 254/1156) spt-daemon broker::tests::delivered_cursor_advances_only_on_ok_and_is_monotonic test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.6075040Z PASS [ 0.506s] ( 255/1156) spt::bin/spt cli::tests::fork_forks_homes_and_deletes_exactly_the_source test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.6118398Z PASS [ 0.006s] ( 256/1156) spt-daemon broker::tests::input_enqueue_drops_and_stamps_on_full_then_heals_on_drain test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.6136878Z PASS [ 0.007s] ( 257/1156) spt-daemon broker::tests::input_writer_preserves_strict_fifo_order_through_the_sole_writer test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.6183986Z PASS [ 0.006s] ( 258/1156) spt-daemon broker::tests::sessions_reply_resume_seq_defaults_when_absent test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.6220368Z PASS [ 0.008s] ( 259/1156) spt-daemon broker::tests::superseded_controller_writer_is_epoch_gated_silent_one_live_writer_per_conn test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.6250220Z PASS [ 0.007s] ( 260/1156) spt-daemon broker::tests::viewer_overflow_or_disconnect_evicts_never_blocks test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.6287986Z PASS [ 0.007s] ( 261/1156) spt-daemon codec::tests::back_to_back_frames_decode_independently test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.6312087Z PASS [ 0.006s] ( 262/1156) spt-daemon codec::tests::frame_round_trips_through_buffer test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.6347844Z PASS [ 0.006s] ( 263/1156) spt-daemon codec::tests::oversized_prefix_rejected test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.6376663Z PASS [ 0.006s] ( 264/1156) spt-daemon config::tests::auto_suspend_knob_is_opt_in_default_off test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.6413337Z PASS [ 0.006s] ( 265/1156) spt-daemon config::tests::crash_grace_is_config_driven test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.6448853Z PASS [ 0.007s] ( 266/1156) spt-daemon config::tests::detached_subnets_knob_defaults_empty test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.6481302Z PASS [ 0.007s] ( 267/1156) spt-daemon config::tests::full_auto_update_is_gated_by_default test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.6522519Z PASS [ 0.007s] ( 268/1156) spt-daemon config::tests::malformed_file_degrades_to_default test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.6547838Z PASS [ 0.211s] ( 269/1156) spt-daemon brainproc::tests::clear_before_spawn_defeats_exact_generation_stale_file test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.6554081Z PASS [ 0.007s] ( 270/1156) spt-daemon config::tests::missing_file_is_default test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.6585913Z PASS [ 0.515s] ( 271/1156) spt::bin/spt cli::tests::probe_all_cap_batches_into_windows test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.6600194Z PASS [ 0.008s] ( 272/1156) spt-daemon config::tests::pulse_period_is_config_driven test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.6622249Z PASS [ 0.007s] ( 273/1156) spt-daemon config::tests::save_load_roundtrip test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.6623514Z PASS [ 0.008s] ( 274/1156) spt-daemon config::tests::relay_choice_is_config_driven test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.6655165Z PASS [ 0.007s] ( 275/1156) spt-daemon consent::tests::decide_honors_full_auto_flag test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.6672606Z PASS [ 0.007s] ( 276/1156) spt-daemon consent::tests::no_live_session_resolves_to_none test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.6711205Z PASS [ 0.009s] ( 277/1156) spt-daemon consent::tests::resolves_most_recently_active_live_session test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.6720698Z PASS [ 0.007s] ( 278/1156) spt-daemon daemon::tests::net_retry_backoff_doubles_then_caps test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.6733532Z PASS [ 0.006s] ( 279/1156) spt-daemon deadline::tests::advance_after_fire_steps_one_grid_normally_and_collapses_a_stall test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.6758901Z PASS [ 0.013s] ( 280/1156) spt-daemon daemon::tests::is_running_tracks_the_seed_channel test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.6760058Z PASS [ 0.208s] ( 281/1156) spt-daemon brainproc::tests::trial_kills_alive_never_ready_candidate_before_rollback test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.6765109Z PASS [ 0.222s] ( 282/1156) spt-daemon brainproc::tests::ready_with_matching_bytes_promotes test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.6797686Z PASS [ 0.008s] ( 283/1156) spt-daemon deadline::tests::corrupt_file_degrades_to_fresh test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.6801967Z PASS [ 0.009s] ( 284/1156) spt-daemon deadline::tests::cold_and_crash_write_fresh_anchor_at_now test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.6815161Z PASS [ 0.008s] ( 285/1156) spt-daemon deadline::tests::distinct_keys_do_not_cross_clobber test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.6835509Z PASS [ 0.007s] ( 286/1156) spt-daemon deadline::tests::next_fire_on_grid_returns_now_and_advances_strictly test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.6836363Z PASS [ 0.008s] ( 287/1156) spt-daemon deadline::tests::next_fire_between_grid_points_rounds_up test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.6836959Z PASS [ 0.008s] ( 288/1156) spt-daemon deadline::tests::next_fire_long_jump_collapses_missed_ticks_to_one test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.6877615Z PASS [ 0.008s] ( 289/1156) spt-daemon deadline::tests::next_fire_saturates_when_now_precedes_anchor test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.6878812Z PASS [ 0.007s] ( 290/1156) spt-daemon deadline::tests::one_shot_fires_at_or_after_target_and_never_resets test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.6883698Z PASS [ 0.217s] ( 291/1156) spt-daemon brainproc::tests::trial_promotes_on_ready_then_supervises_the_accepted_binary test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.6908486Z PASS [ 0.007s] ( 292/1156) spt-daemon deadline::tests::zero_interval_degrades_to_config_default test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.6911330Z PASS [ 0.010s] ( 293/1156) spt-daemon deadline::tests::update_keeps_anchor_and_refreshes_interval test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.6912331Z PASS [ 0.008s] ( 294/1156) spt-daemon deadline::tests::update_with_no_file_falls_back_fresh test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.6961944Z PASS [ 0.012s] ( 295/1156) spt-daemon deelevate::tests::election_resolves_real_users_never_root test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.6963512Z PASS [ 0.009s] ( 296/1156) spt-daemon deelevate::tests::plan_spawn_deelevates_only_with_a_target test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.6967698Z PASS [ 0.009s] ( 297/1156) spt-daemon deelevate::tests::env_overlay_keeps_explicit_spt_home_alive test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.6977863Z PASS [ 0.009s] ( 298/1156) spt-daemon deelevate::tests::sudo_invoker_derivation_is_strict test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.7011749Z PASS [ 0.010s] ( 299/1156) spt-daemon digest::tests::common_prefix_len_finds_the_unchanged_head test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.7030649Z PASS [ 0.012s] ( 300/1156) spt-daemon digest::tests::log_less_two_origin_merge_interleaves_by_ts test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.7055340Z PASS [ 0.009s] ( 301/1156) spt-daemon digest::tests::merge_by_ts_interleaves_context test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.7056799Z PASS [ 0.009s] ( 302/1156) spt-daemon digest::tests::projects_empty_for_a_sourceless_endpoint test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.7057620Z PASS [ 0.008s] ( 303/1156) spt-daemon digest::tests::resolve_config_precedence test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.7062796Z PASS [ 0.010s] ( 304/1156) spt-daemon digest::tests::projects_a_log_less_endpoint_from_digest_log test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.7095900Z PASS [ 0.008s] ( 305/1156) spt-daemon digesthub::tests::dropped_subscriber_is_pruned test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.7103435Z PASS [ 0.007s] ( 306/1156) spt-daemon digesthub::tests::project_and_publish_stores_latest test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.7134964Z PASS [ 0.008s] ( 307/1156) spt-daemon digesthub::tests::publish_delta_is_tail_then_full_refresh test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.7135940Z PASS [ 0.008s] ( 308/1156) spt-daemon digesthub::tests::subscribe_returns_current_base test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.7136760Z PASS [ 0.008s] ( 309/1156) spt-daemon digesthub::tests::render_is_glanceable test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.7144691Z PASS [ 0.008s] ( 310/1156) spt-daemon dispatch::tests::classifies_every_family_by_first_line_shape test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.7177895Z PASS [ 0.008s] ( 311/1156) spt-daemon dispatch::tests::unknown_shapes_refuse_classification test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.7190077Z PASS [ 0.008s] ( 312/1156) spt-daemon drivehub::tests::clear_evicts_the_slot test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.7220382Z PASS [ 0.007s] ( 313/1156) spt-daemon drivehub::tests::write_is_latest_wins test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.7220993Z PASS [ 0.008s] ( 314/1156) spt-daemon drivehub::tests::take_is_exactly_once test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.7238465Z PASS [ 0.010s] ( 315/1156) spt-daemon drivehub::tests::dead_generation_frame_is_never_served test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.7240005Z PASS [ 0.010s] ( 316/1156) spt-daemon drivehub::tests::slots_are_per_owner test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.7245918Z PASS [ 0.353s] ( 317/1156) spt::bin/spt wansend::tests::remote_rest_suspends_and_wakes_with_the_deferred_gate test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.7279110Z PASS [ 0.009s] ( 318/1156) spt-daemon effect::tests::apply_once_does_not_hold_the_journal_lock_across_effect test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.7316145Z PASS [ 0.007s] ( 319/1156) spt-daemon effect::tests::second_apply_for_same_key_is_deduped test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.7320388Z PASS [ 0.008s] ( 320/1156) spt-daemon effect::tests::open_creates_missing_parent_dirs test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.7345476Z PASS [ 0.017s] ( 321/1156) spt-daemon effect::tests::applied_set_survives_reopen test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.7348873Z PASS [ 0.007s] ( 322/1156) spt-daemon frame::tests::envelope_with_unknown_trailing_field_decodes_on_older_peer test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.7386230Z PASS [ 0.006s] ( 323/1156) spt-daemon frame::tests::handshake_rejects_below_floor test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.7387278Z PASS [ 0.007s] ( 324/1156) spt-daemon frame::tests::handshake_accepts_newer_brain_on_older_broker test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.7410590Z PASS [ 0.006s] ( 325/1156) spt-daemon frame::tests::handshake_rejects_role_mismatch test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.7418197Z PASS [ 0.007s] ( 326/1156) spt-daemon frame::tests::unknown_kind_is_not_a_decode_error test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.7456999Z PASS [ 0.007s] ( 327/1156) spt-daemon grants::tests::escalation_ask_body_roundtrip test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.7457851Z PASS [ 0.007s] ( 328/1156) spt-daemon grants::tests::escalation_answers_apply test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.7458690Z PASS [ 0.055s] ( 329/1156) spt-daemon digest::tests::extractor_spans_sessions_with_a_boundary_marker test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.7478293Z PASS [ 0.006s] ( 330/1156) spt-daemon grants::tests::no_session_escalates_with_none_target test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.7503850Z PASS [ 0.026s] ( 331/1156) spt-daemon effect::tests::ptywrite_skips_the_durable_journal_write_while_netsend_persists test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.7526789Z PASS [ 0.007s] ( 332/1156) spt-daemon grants::tests::preconsent_flags_author_grants test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.7527714Z PASS [ 0.007s] ( 333/1156) spt-daemon grants::tests::ungranted_escalates_granted_allows test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.7528561Z PASS [ 0.007s] ( 334/1156) spt-daemon grants::tests::reserved_capabilities_refuse_even_when_granted test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.7532731Z PASS [ 0.031s] ( 335/1156) spt-daemon effect::tests::failed_effect_is_not_recorded_applied test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.7548482Z PASS [ 0.007s] ( 336/1156) spt-daemon harnesshost::tests::mint_session_id_is_fresh_hex test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.7598707Z PASS [ 0.009s] ( 337/1156) spt-daemon harnesshost::tests::prepare_fails_closed_on_wrong_kind_missing_role_and_bad_template test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.7621262Z PASS [ 0.009s] ( 338/1156) spt-daemon harnesshost::tests::prepare_fills_id_and_session_into_self_command test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.7622578Z PASS [ 0.007s] ( 339/1156) spt-daemon harnesshost::tests::prepare_threads_translation_binary_path_when_declared test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.7624619Z PASS [ 0.010s] ( 340/1156) spt-daemon harnesshost::tests::prepare_resume_falls_back_to_self_when_no_resume_role test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.7629519Z PASS [ 0.010s] ( 341/1156) spt-daemon harnesshost::tests::prepare_selects_resume_template_on_resume_else_self test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.7630567Z PASS [ 0.010s] ( 342/1156) spt-daemon harnesshost::tests::prepare_fills_env_inject_values_with_substitution test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.7924730Z PASS [ 0.030s] ( 343/1156) spt-daemon lifecycle::tests::harness_owner_gone_anchors_on_parent_pid test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.7935977Z PASS [ 0.030s] ( 344/1156) spt-daemon lifecycle::tests::orphan_watch_honors_stop_for_live_owner test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.7947191Z PASS [ 0.032s] ( 345/1156) spt-daemon lifecycle::tests::daemon_hosted_psyche_liveness_is_status_not_pid test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.8206660Z PASS [ 1.827s] ( 346/1156) spt::shell_sleepwake_e2e sleep_wake_cycle_drives_from_both_ends test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.8207411Z PASS [ 0.061s] ( 347/1156) spt-daemon lifecycle::tests::crash_signoff_spares_recovered_self test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.8237526Z PASS [ 0.062s] ( 348/1156) spt-daemon lifecycle::tests::crash_signoff_tears_down_when_still_gone test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.8241762Z PASS [ 0.061s] ( 349/1156) spt-daemon lifecycle::tests::orphan_watch_fires_on_dead_owner test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.8311780Z PASS [ 0.109s] ( 350/1156) spt-daemon effect::tests::gauntlet_is_exactly_once_across_brain_crashes test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.8379140Z PASS [ 0.007s] ( 351/1156) spt-daemon linkhost::tests::per_capability_act_gate_blocks_until_class_scoped_grant test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.8502344Z PASS [ 0.029s] ( 352/1156) spt-daemon lifecycle::tests::pulse_recency_and_auto_suspend_follow_resting_state test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.8505808Z PASS [ 0.058s] ( 353/1156) spt-daemon lifecycle::tests::pulse_loop_does_not_write_anchor_per_fire test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.8585338Z PASS [ 0.064s] ( 354/1156) spt-daemon lifecycle::tests::pulse_loop_update_preserves_phase_crash_rebases test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.8659150Z PASS [ 0.072s] ( 355/1156) spt-daemon lifecycle::tests::pulse_loop_is_config_paced_and_killable test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.8802046Z PASS [ 0.421s] ( 356/1156) spt-daemon brainproc::tests::stale_generation_minus_one_ready_never_promotes test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.8975281Z PASS [ 0.032s] ( 357/1156) spt-daemon livehost::tests::boot_gate_offlines_sessionless_controllable_then_reconcile_skips_host test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.9008603Z PASS [ 0.077s] ( 358/1156) spt-daemon linkhost::tests::gateway_typed_owner_resolves_and_drives_keyed_on_id_not_type test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.9030821Z PASS [ 0.437s] ( 359/1156) spt-daemon brainproc::tests::supervisor_respawns_brain_until_stopped test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.9031874Z PASS [ 0.438s] ( 360/1156) spt-daemon brainproc::tests::supervisor_owns_generation_and_stamps_start_reason test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.9055165Z PASS [ 0.008s] ( 361/1156) spt-daemon livehost::tests::orphan_reap_is_id_specific_spares_a_same_basename_sibling test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.9103901Z PASS [ 0.009s] ( 362/1156) spt-daemon livehost::tests::pull_liveness_marks_sessionless_spt_hosted_offline_only test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.9113975Z PASS [ 0.073s] ( 363/1156) spt-daemon linkhost::tests::prepare_drive_is_live_or_drop_and_never_spools test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.9197421Z PASS [ 0.008s] ( 364/1156) spt-daemon livehost::tests::reconcile_skips_an_offline_live_endpoint test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.9281549Z PASS [ 0.077s] ( 365/1156) spt-daemon linkhost::tests::run_action_refuses_gated_op_without_spooling test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.9282598Z PASS [ 0.078s] ( 366/1156) spt-daemon linkhost::tests::run_action_drive_drops_offline_without_wake_or_spool test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.9333907Z PASS [ 0.053s] ( 367/1156) spt-daemon livehost::tests::fresh_brain_rehydrates_an_online_live_endpoint test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.9347002Z PASS [ 0.007s] ( 368/1156) spt-daemon livehost::tests::residency_classification test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.9355436Z PASS [ 0.032s] ( 369/1156) spt-daemon livehost::tests::pull_reconcile_offlines_perch_when_broker_session_dies test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.9394424Z PASS [ 0.198s] ( 370/1156) spt-daemon grants::tests::escalation_notif_fires_to_most_recent_and_roundtrips test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.9412067Z PASS [ 0.008s] ( 371/1156) spt-daemon machineid::tests::hash_is_domain_separated_and_stable test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.9415226Z PASS [ 0.006s] ( 372/1156) spt-daemon msg::tests::bytes_round_trip_through_payload test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.9416025Z PASS [ 0.007s] ( 373/1156) spt-daemon machineid::tests::machine_id_hash_resolves_and_is_stable test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.9462727Z PASS [ 0.043s] ( 374/1156) spt-daemon livehost::tests::reconcile_does_not_double_host test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.9472037Z PASS [ 0.008s] ( 375/1156) spt-daemon msg::tests::endpoint_input_frames_round_trip test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.9481449Z PASS [ 0.007s] ( 376/1156) spt-daemon msg::tests::input_req_absent_ack_defaults_true_n_minus_1_safe test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.9482950Z PASS [ 0.007s] ( 377/1156) spt-daemon msg::tests::net_frames_round_trip_and_tolerate_unknown_fields test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.9483852Z PASS [ 0.007s] ( 378/1156) spt-daemon msg::tests::input_req_ack_false_round_trips_faithfully test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.9533491Z PASS [ 0.043s] ( 379/1156) spt-daemon livehost::tests::reconcile_keeps_driver_on_transient_read_fail_unhosts_on_dir_gone test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.9546806Z PASS [ 0.096s] ( 380/1156) spt-daemon linkhost::tests::run_action_relinks_drives_and_refuses test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.9556627Z PASS [ 0.009s] ( 381/1156) spt-daemon msg::tests::output_envelope_round_trips test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.9561026Z PASS [ 0.008s] ( 382/1156) spt-daemon msg::tests::spawn_req_tolerates_unknown_field test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.9565538Z PASS [ 0.009s] ( 383/1156) spt-daemon msg::tests::presence_event_round_trips_and_tolerates_future_kind test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.9619316Z PASS [ 0.042s] ( 384/1156) spt-daemon livehost::tests::reconcile_unhosts_on_offline_transition test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.9635578Z PASS [ 0.008s] ( 385/1156) spt-daemon nethost::tests::retentive_log_is_lossless_ordered_while_ordinary_log_overwrites test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.9648377Z PASS [ 0.059s] ( 386/1156) spt-daemon livehost::tests::reconcile_hosts_an_online_live_endpoint_and_drives_its_pulse test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.9763572Z PASS [ 0.028s] ( 387/1156) spt-daemon nethost::tests::host_binds_endpoint_to_node_identity test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.9764367Z PASS [ 0.156s] ( 388/1156) spt-daemon lifecycle::tests::pulse_tick_ingests_drop test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:47.9944023Z PASS [ 0.041s] ( 389/1156) spt-daemon nethost::tests::loopback_conn_is_a_reused_singleton_that_cross_wires_a_stream_pair test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.0203501Z PASS [ 0.064s] ( 390/1156) spt-daemon nethost::tests::two_hosts_dial_over_loopback test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.0223722Z PASS [ 0.028s] ( 391/1156) spt-daemon notif::tests::notif_command_renders_all_keys_and_is_opt_in test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.0374844Z PASS [ 0.061s] ( 392/1156) spt-daemon notif::tests::no_live_endpoint_is_a_typed_no_target test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.0770042Z PASS [ 0.253s] ( 393/1156) spt-daemon lifecycle::tests::rest_event_fires_echo_once_and_wake_resurfaces test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.0870248Z PASS [ 0.122s] ( 394/1156) spt-daemon notif::tests::hidden_endpoint_boundary_surfaces_nothing test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.0987122Z PASS [ 0.061s] ( 395/1156) spt-daemon notif::tests::shell_notif_templates_render_for_attached_instances_only test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.1325528Z PASS [ 0.184s] ( 396/1156) spt-daemon nethost::tests::bounded_block_on_cuts_a_never_completing_op_with_an_ordinary_error test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.1462029Z LEAK [ 0.218s] ( 397/1156) spt-daemon livehost::tests::stop_host_reaps_the_detached_psyche_process test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.1833091Z PASS [ 0.645s] ( 398/1156) spt-daemon brainproc::tests::trial_rolls_back_after_budget_of_pre_ready_exits test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.1896762Z PASS [ 0.006s] ( 399/1156) spt-daemon pairhost::tests::wire_errors_classify_for_the_guided_ux test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.1964158Z PASS [ 0.235s] ( 400/1156) spt-daemon notif::tests::first_fire_reaches_most_recent_visible_endpoint test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.1968584Z PASS [ 0.240s] ( 401/1156) spt-daemon notif::tests::consent_decision_produces_notif_only_when_gated test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.1985172Z PASS [ 0.009s] ( 402/1156) spt-daemon presence::tests::mra_degrades_to_local_and_skips_noise_rows test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.2039795Z PASS [ 0.007s] ( 403/1156) spt-daemon presence::tests::snapshot_loading_degrades_on_junk test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.2040698Z PASS [ 0.008s] ( 404/1156) spt-daemon presence::tests::mra_joins_local_and_gossiped_legs_under_one_max test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.2055584Z PASS [ 0.007s] ( 405/1156) spt-daemon presence::tests::subnet_scope_gates_both_legs test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.2108708Z PASS [ 0.007s] ( 406/1156) spt-daemon propagate::tests::classifier_maps_every_status_shape test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.2184257Z PASS [ 0.242s] ( 407/1156) spt-daemon notif::tests::hidden_endpoint_is_never_the_target test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.2266429Z PASS [ 0.263s] ( 408/1156) spt-daemon notif::tests::first_fire_redirects_to_a_fresher_remote_winner_unmarked test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.2761602Z PASS [ 0.189s] ( 409/1156) spt-daemon notifsync::tests::concurrent_dismiss_and_surface_commute_across_the_feed test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.2826769Z PASS [ 0.150s] ( 410/1156) spt-daemon notifsync::tests::non_member_subnet_record_never_materializes test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.2827739Z PASS [ 0.184s] ( 411/1156) spt-daemon notifsync::tests::feed_converges_two_stores_and_dismiss_replicates test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.2828420Z PASS [ 0.136s] ( 412/1156) spt-daemon notifsync::tests::untrusted_and_cross_subnet_origins_are_dropped test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.2910912Z PASS [ 0.008s] ( 413/1156) spt-daemon pump::registry::tests::fire_due_rotations_rotates_due_and_leaves_pending test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.2973901Z PASS [ 0.006s] ( 414/1156) spt-daemon pump::registry::tests::poll_wake_takes_the_advertise_marker_exactly_once test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.3063557Z PASS [ 0.009s] ( 415/1156) spt-daemon pump::registry::tests::pre_round_sweeps_and_refreshes_adverts_each_round test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.3129221Z PASS [ 0.006s] ( 416/1156) spt-daemon pump::tests::choreography_fan_targets_skips_detached_and_self test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.3190282Z PASS [ 0.006s] ( 417/1156) spt-daemon pump::tests::choreography_first_tick_primes_all_legs test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.3253075Z PASS [ 0.006s] ( 418/1156) spt-daemon pump::tests::choreography_mark_after_round_stamps_only_due test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.3316003Z PASS [ 0.006s] ( 419/1156) spt-daemon pump::tests::choreography_peer_step_aborts_on_first_failure test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.3380890Z PASS [ 0.006s] ( 420/1156) spt-daemon pump::tests::choreography_pre_round_once_and_before_any_peer_step test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.3440056Z PASS [ 0.006s] ( 421/1156) spt-daemon pump::tests::choreography_wake_forces_only_that_worker test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.3499499Z PASS [ 0.006s] ( 422/1156) spt-daemon pump::tests::first_tick_is_due_and_never_underflows test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.3541028Z PASS [ 0.150s] ( 423/1156) spt-daemon psyrelay::tests::empty_and_oversize_bodies_drop_typed test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.3609704Z PASS [ 0.007s] ( 424/1156) spt-daemon pump::tests::peer_outcome_timeout_bubbles_ordinary_aborts test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.3637860Z PASS [ 0.145s] ( 425/1156) spt-daemon psyrelay::tests::null_stdout_driver_fails_the_guard test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.3668003Z PASS [ 0.006s] ( 426/1156) spt-daemon pump::tests::push_target_is_the_full_roster_minus_self_and_tombstoned test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.3690271Z PASS [ 0.347s] ( 427/1156) spt-daemon notif::tests::rollback_notif_is_loud_and_resurfaces test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.3704597Z PASS [ 0.007s] ( 428/1156) spt-daemon pump::tests::seeded_dial_order_fallback_and_writeback test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.3715448Z PASS [ 0.022s] ( 429/1156) spt-daemon pump::tests::heartbeat_writes_and_advances test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.3730025Z PASS [ 0.006s] ( 430/1156) spt-daemon pump::tests::supervisor_backoff_doubles_caps_and_resets test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.3739072Z PASS [ 0.163s] ( 431/1156) spt-daemon psyrelay::tests::notify_without_live_endpoint_is_pending test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.3768335Z PASS [ 0.006s] ( 432/1156) spt-daemon pump::tests::wake_forces_a_round_regardless_of_cadence test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.3797086Z PASS [ 0.007s] ( 433/1156) spt-daemon reap::tests::reap_without_enroll_is_noop test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.3808899Z PASS [ 0.007s] ( 434/1156) spt-daemon reconcile::tests::active_node_wins test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.3822833Z PASS [ 0.156s] ( 435/1156) spt-daemon psyrelay::tests::prose_only_relays_nothing test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.3828070Z PASS [ 0.006s] ( 436/1156) spt-daemon reconcile::tests::double_active_tiebreaks_deterministically test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.3863067Z PASS [ 0.366s] ( 437/1156) spt-daemon notif::tests::resurface_delivers_undismissed_with_gates test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.3864244Z PASS [ 0.006s] ( 438/1156) spt-daemon reconcile::tests::fallback_lowest_non_offline test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.3877833Z PASS [ 0.007s] ( 439/1156) spt-daemon reconcile::tests::no_rows_reconciles_locally test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.3931893Z PASS [ 0.010s] ( 440/1156) spt-daemon registryhost::tests::advertise_local_scans_and_respects_visibility test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.3966793Z PASS [ 0.010s] ( 441/1156) spt-daemon registryhost::tests::advertisement_carries_both_authored_blurb test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.3973847Z PASS [ 0.010s] ( 442/1156) spt-daemon registryhost::tests::advertisement_carries_the_presence_datum test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.3975262Z PASS [ 0.011s] ( 443/1156) spt-daemon registryhost::tests::advertise_local_stamps_the_node_label test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.4037185Z PASS [ 0.010s] ( 444/1156) spt-daemon registryhost::tests::advertisement_follows_resting_transitions_epoch_bumped test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.4047491Z PASS [ 0.007s] ( 445/1156) spt-daemon registryhost::tests::apply_feed_gates_and_merges_under_the_lease test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.4048311Z PASS [ 0.328s] ( 446/1156) spt-daemon notif::tests::suppression_window_holds_cross_endpoint test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.4051556Z PASS [ 0.008s] ( 447/1156) spt-daemon registryhost::tests::apply_node_labels_gates_and_merges test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.4052549Z PASS [ 0.008s] ( 448/1156) spt-daemon registryhost::tests::apply_feed_flips_only_on_observed_transition_to_active test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.4060465Z PASS [ 0.024s] ( 449/1156) spt-daemon registryhost::tests::admitted_feeds_stamp_the_heard_map test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.4070427Z PASS [ 0.038s] ( 450/1156) spt-daemon pump::tests::supervisor_restarts_a_panicking_pump_until_stop test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.4132782Z PASS [ 0.008s] ( 451/1156) spt-daemon registryhost::tests::superseded_requires_label_and_machine_id_under_other_key test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.4134143Z PASS [ 0.008s] ( 452/1156) spt-daemon registryhost::tests::evict_silent_peers_drops_unheard_rows_and_rewrites_snapshots test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.4139894Z PASS [ 0.009s] ( 453/1156) spt-daemon registryhost::tests::repair_evict_tombstones_roster_snapshot_and_notices test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.4148333Z PASS [ 0.010s] ( 454/1156) spt-daemon registryhost::tests::evict_silent_peers_never_touches_own_rows test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.4149358Z PASS [ 0.009s] ( 455/1156) spt-daemon registryhost::tests::with_epoch_is_the_one_canonical_counter test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.4150339Z PASS [ 0.011s] ( 456/1156) spt-daemon registryhost::tests::erased_perch_is_advertised_offline_not_left_active test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.4202611Z PASS [ 0.048s] ( 457/1156) spt-daemon reap::tests::group_reaps_enrolled_child_and_grandchild test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.4222855Z PASS [ 0.007s] ( 458/1156) spt-daemon relcache::tests::stage_round_trips_and_restage_replaces test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.4223856Z PASS [ 0.008s] ( 459/1156) spt-daemon relcache::tests::partial_update_set_can_serve_held_platform_only test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.4224776Z PASS [ 0.007s] ( 460/1156) spt-daemon relcache::tests::torn_or_corrupt_stage_offers_nothing test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.4226446Z PASS [ 0.009s] ( 461/1156) spt-daemon relcache::tests::applied_state_two_phase_round_trips_and_degrades test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.4233377Z PASS [ 0.008s] ( 462/1156) spt-daemon relcache::tests::single_platform_stamp_is_explicit_and_cleared_on_restage test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.4309065Z PASS [ 0.007s] ( 463/1156) spt-daemon release::tests::hex_roundtrips test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.4310106Z PASS [ 0.011s] ( 464/1156) spt-daemon relcache::tests::update_set_round_trips_and_loads_by_platform test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.4383464Z PASS [ 0.156s] ( 465/1156) spt-daemon psyrelay::tests::reply_without_target_is_dropped test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.4390935Z PASS [ 0.017s] ( 466/1156) spt-daemon release::tests::builtin_keys_merge_and_revoke_under_file_overlay test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.4392009Z PASS [ 0.008s] ( 467/1156) spt-daemon release::tests::production_policy_loads_fail_closed test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.4392708Z PASS [ 0.017s] ( 468/1156) spt-daemon release::tests::artifact_digest_mismatch_is_rejected test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.4394076Z PASS [ 0.017s] ( 469/1156) spt-daemon release::tests::expired_metadata_is_rejected test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.4398800Z PASS [ 0.017s] ( 470/1156) spt-daemon release::tests::channel_mismatch_is_rejected test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.4464307Z PASS [ 0.007s] ( 471/1156) spt-daemon release::tests::shipped_builtin_table_is_well_formed test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.4471104Z PASS [ 0.009s] ( 472/1156) spt-daemon release::tests::revoked_key_is_rejected test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.4564098Z PASS [ 0.017s] ( 473/1156) spt-daemon release::tests::tampered_metadata_fails_signature test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.4572477Z PASS [ 0.018s] ( 474/1156) spt-daemon release::tests::update_set_artifact_mismatch_is_rejected test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.4576570Z PASS [ 0.018s] ( 475/1156) spt-daemon release::tests::untrusted_key_is_unknown test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.4648060Z PASS [ 0.018s] ( 476/1156) spt-daemon release::tests::update_set_tampering_breaks_whole_set_signature test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.4654094Z PASS [ 0.019s] ( 477/1156) spt-daemon release::tests::update_set_missing_platform_is_typed_rejection test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.4684676Z PASS [ 0.027s] ( 478/1156) spt-daemon release::tests::update_set_channel_and_rollback_gates_hold test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.4685548Z PASS [ 0.036s] ( 479/1156) spt-daemon release::tests::non_monotonic_version_is_rollback test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.4734410Z PASS [ 0.008s] ( 480/1156) spt-daemon resting::tests::apply_event_auto_suspends_under_the_resolved_chain test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.4740269Z PASS [ 0.009s] ( 481/1156) spt-daemon resting::tests::apply_event_echo_failure_is_loud_but_state_persists test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.4741192Z PASS [ 0.018s] ( 482/1156) spt-daemon release::tests::update_set_verifies_and_selects_platform_artifact test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.4747561Z PASS [ 0.008s] ( 483/1156) spt-daemon resting::tests::auto_suspend_counts_from_dormancy_onset_and_is_opt_in test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.4758073Z PASS [ 0.009s] ( 484/1156) spt-daemon resting::tests::apply_event_fires_echo_once_per_rest_edge_and_wake_on_wake test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.4764980Z PASS [ 0.019s] ( 485/1156) spt-daemon release::tests::valid_release_verifies_and_artifact_matches test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.4820905Z PASS [ 0.007s] ( 486/1156) spt-daemon resting::tests::knob_chain_resolves_global_node_endpoint test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.4822202Z PASS [ 0.008s] ( 487/1156) spt-daemon resting::tests::freshness_pull_marker_is_taken_exactly_once test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.4829628Z PASS [ 0.009s] ( 488/1156) spt-daemon resting::tests::deferred_held_keys_on_the_durable_rest_record test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.4836958Z PASS [ 0.278s] ( 489/1156) spt-daemon psyrelay::tests::notify_reaches_own_user_only test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.4858122Z PASS [ 0.009s] ( 490/1156) spt-daemon resting::tests::rest_record_round_trips_with_anchor_discipline test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.4903262Z PASS [ 0.008s] ( 491/1156) spt-daemon resting::tests::transition_table_matches_the_context_model test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.4908835Z PASS [ 0.009s] ( 492/1156) spt-daemon rollback_compat::tests::pre_ready_durable_files_are_additive_and_n1_readable test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.4941169Z PASS [ 0.036s] ( 493/1156) spt-daemon release::tests::verify_detached_signs_raw_artifact_bytes test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.4978142Z PASS [ 0.014s] ( 494/1156) spt-daemon seedmap::tests::put_then_take_consumes_once test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.4978739Z PASS [ 0.015s] ( 495/1156) spt-daemon seedmap::tests::put_refreshes_existing test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.4990244Z PASS [ 0.013s] ( 496/1156) spt-daemon seedmap::tests::request_stop_barrier_holds_until_no_listener test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.5004977Z PASS [ 0.006s] ( 497/1156) spt-daemon seedproofx::grace_tests::grade_truth_table test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.5040025Z PASS [ 0.014s] ( 498/1156) spt-daemon seedmap::tests::stop_op_acks_then_serve_returns test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.5040902Z PASS [ 0.013s] ( 499/1156) spt-daemon seedmap::tests::take_absent_is_none test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.5049604Z PASS [ 0.006s] ( 500/1156) spt-daemon seedproofx::roster_tests::empty_roster_frame_round_trips test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.5050513Z PASS [ 0.007s] ( 501/1156) spt-daemon seedproofx::grace_tests::seed_never_appears_in_roster_gossip test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.5051505Z PASS [ 0.007s] ( 502/1156) spt-daemon seedproofx::grace_tests::seedxfer_frame_round_trips_and_rejects_malformed test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.5088648Z PASS [ 0.008s] ( 503/1156) spt-daemon seedproofx::roster_tests::gapfill_fills_absent_only_and_skips_self test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.5121087Z PASS [ 0.007s] ( 504/1156) spt-daemon service::tests::plan_stop_routes_managed_then_ipc_then_noop test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.5122040Z PASS [ 0.008s] ( 505/1156) spt-daemon seedproofx::roster_tests::roster_frame_round_trips test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.5122941Z PASS [ 0.007s] ( 506/1156) spt-daemon service::tests::plan_start_prefers_service_then_spawn_idempotent test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.5124229Z PASS [ 0.008s] ( 507/1156) spt-daemon seedproofx::roster_tests::malformed_roster_frame_rejected test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.5132600Z PASS [ 0.008s] ( 508/1156) spt-daemon serveprobe::tests::is_serving_subnet_honors_membership_and_detach test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.5171214Z PASS [ 0.008s] ( 509/1156) spt-daemon service::tests::run_refused_only_when_windows_and_vanishing test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.5199351Z PASS [ 0.008s] ( 510/1156) spt-daemon service::tests::service_ignored_under_spt_home_override test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.5200083Z PASS [ 0.008s] ( 511/1156) spt-daemon service::tests::systemd_unit_path_follows_xdg_then_home test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.5209383Z PASS [ 0.009s] ( 512/1156) spt-daemon shellchan::tests::drive_frame_shape_mirrors_sensory test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.5211702Z PASS [ 0.009s] ( 513/1156) spt-daemon shellchan::tests::frames_compose_and_stamp_roundtrips test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.5214435Z PASS [ 0.008s] ( 514/1156) spt-daemon shellchan::tests::sensory_text_file_frames_shape test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.5262998Z PASS [ 0.009s] ( 515/1156) spt-daemon shellchan::tests::vocab_check_bounds_ops_and_args test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.5295354Z PASS [ 0.009s] ( 516/1156) spt-daemon shelldisc::tests::discover_across_joins_other_node_subnet_adapters test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.5305491Z PASS [ 0.010s] ( 517/1156) spt-daemon shelldisc::tests::shell_context_renders_sections_and_empties_to_none test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.5337341Z PASS [ 0.014s] ( 518/1156) spt-daemon shelldisc::tests::discovery_own_plus_broadcast_gated_instantiable test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.5367055Z PASS [ 0.010s] ( 519/1156) spt-daemon shellhost::tests::close_shell_ephemeral_tears_down_and_frees_the_slot test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.5368105Z PASS [ 0.261s] ( 520/1156) spt-daemon psyrelay::tests::reply_relays_to_inbound_sender test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.5382811Z PASS [ 0.009s] ( 521/1156) spt-daemon shellhost::tests::gateway_typed_owner_spawns_and_owns_a_shell test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.5391901Z PASS [ 0.009s] ( 522/1156) spt-daemon shellhost::tests::launch_fails_closed_on_bad_templates test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.5442773Z PASS [ 0.010s] ( 523/1156) spt-daemon shellhost::tests::launch_parks_token_and_bind_by_token_onlines test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.5446206Z PASS [ 0.008s] ( 524/1156) spt-daemon shellwake::tests::backoff_curve_doubles_to_the_cap test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.5450081Z PASS [ 0.008s] ( 525/1156) spt-daemon shellhost::tests::link_key_and_frame_mac_roundtrip test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.5475300Z PASS [ 0.074s] ( 526/1156) spt-daemon resting::tests::daemon_rest_event_arms_gate_at_rest_edge_only test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.5498753Z PASS [ 0.011s] ( 527/1156) spt-daemon shellwake::tests::reconcile_resolves_profile_overlay test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.5549706Z PASS [ 0.011s] ( 528/1156) spt-daemon shellwake::tests::resolve_wake_leaves_a_dormant_owner_and_relaunches test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.5572908Z PASS [ 0.007s] ( 529/1156) spt-daemon shellwake::tests::watcher_opcode_exit_fires_resolution_once test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.5603925Z PASS [ 0.084s] ( 530/1156) spt-daemon resting::tests::rest_edges_cascade_shells_with_divergence test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.5610481Z PASS [ 0.016s] ( 531/1156) spt-daemon shellwake::tests::resolve_wake_refuses_without_a_reachable_owner test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.5613916Z PASS [ 0.006s] ( 532/1156) spt-daemon sync::tests::gate_decision_table test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.5671744Z PASS [ 0.006s] ( 533/1156) spt-daemon translation::tests::inject_floor_buffers_while_held_then_drains_in_order test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.5672719Z PASS [ 0.006s] ( 534/1156) spt-daemon translation::tests::key_cmd_parses_each_wire_shape test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.5692658Z PASS [ 0.031s] ( 535/1156) spt-daemon shellwake::tests::reconcile_flips_watchers_with_instance_state test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.5736727Z PASS [ 0.006s] ( 536/1156) spt-daemon translation::tests::to_binary_serializes_to_wire_and_input_is_content_free test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.5750001Z PASS [ 0.008s] ( 537/1156) spt-daemon translation::tests::key_to_bytes_send_keys_map test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.5767608Z PASS [ 0.007s] ( 538/1156) spt-daemon transport::tests::local_socket_handshake_and_frame_round_trip test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.5808557Z PASS [ 0.007s] ( 539/1156) spt-daemon transport::tests::local_socket_rejects_wrong_role test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.5809568Z PASS [ 0.006s] ( 540/1156) spt-daemon tunnelhub::tests::clear_evicts_the_entry test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.5833469Z PASS [ 0.007s] ( 541/1156) spt-daemon tunnelhub::tests::dead_generation_stream_is_never_surfaced test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.5879337Z PASS [ 0.007s] ( 542/1156) spt-daemon tunnelhub::tests::relink_overwrites_the_entry_with_a_fresh_generation test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.5885460Z PASS [ 0.008s] ( 543/1156) spt-daemon tunnelhub::tests::entries_are_per_owner test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.5896907Z PASS [ 0.042s] ( 544/1156) spt-daemon shellwake::tests::watcher_crash_exits_respawn_then_give_up test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.5903660Z PASS [ 0.007s] ( 545/1156) spt-daemon tunnelhub::tests::resolve_serves_each_end_under_the_opening_token test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.5948546Z PASS [ 0.007s] ( 546/1156) spt-daemon update::tests::apply_refuses_non_brain_only_plan test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.5949626Z PASS [ 0.006s] ( 547/1156) spt-daemon update::tests::classify_brain_only_when_broker_hosts_new_brain test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.5958776Z PASS [ 0.006s] ( 548/1156) spt-daemon update::tests::classify_broker_breaking_on_resource_abi_change test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.5966101Z PASS [ 0.006s] ( 549/1156) spt-daemon update::tests::classify_broker_compatible_when_brain_below_floor test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.6025251Z PASS [ 0.006s] ( 550/1156) spt-daemon wan::tests::origin_user_backed_matrix test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.6091861Z PASS [ 0.007s] ( 551/1156) spt-daemon wan::tests::wan_user_msg_restamped_unless_origin_user_backed test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.6110947Z PASS [ 0.015s] ( 552/1156) spt-daemon update::tests::plan_verified_yields_a_plan_for_a_valid_release test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.6157672Z PASS [ 0.333s] ( 553/1156) spt-daemon psyrelay::tests::spoofed_routing_is_stripped_and_restamped test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.6174028Z PASS [ 0.006s] ( 554/1156) spt-daemon xfer::tests::resolve_under_confines_to_root test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.6179183Z PASS [ 0.073s] ( 555/1156) spt-daemon shellwake::tests::resolve_wake_revives_a_suspended_owner_without_double_launch test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.6202647Z PASS [ 0.025s] ( 556/1156) spt-daemon update::tests::plan_verified_produces_no_plan_for_a_rejected_release test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.6293379Z PASS [ 0.034s] ( 557/1156) spt-daemon update::tests::plan_verified_update_set_uses_selected_platform_spec test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.6303155Z PASS [ 0.021s] ( 558/1156) spt-daemon xfer::tests::recv_state_chunks_idempotent_and_commit_replays_safely test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.6343134Z PASS [ 0.221s] ( 559/1156) spt-daemon relay::tests::run_honors_stop test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.6578067Z PASS [ 0.023s] ( 560/1156) spt-daemon::netbroker netless_broker_probes_gracefully test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.6926712Z PASS [ 0.135s] ( 561/1156) spt-daemon sync::tests::reconcile_driver_structurally_excludes_live_role test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.6946240Z PASS [ 0.287s] ( 562/1156) spt-daemon relay::tests::respawn_loses_no_spooled_message test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.7102233Z PASS [ 0.189s] ( 563/1156) spt-daemon shellhost::tests::close_shell_delivers_pre_close_then_kills_and_flips_offline test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.7362146Z PASS [ 0.036s] ( 564/1156) spt-daemon::netbroker unknown_net_frame_is_reported_not_fatal test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.7411801Z PASS [ 0.213s] ( 565/1156) spt-daemon shellhost::tests::close_shell_dead_child_is_prompt_and_manifestless_never_erases test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.7436342Z PASS [ 0.105s] ( 566/1156) spt-daemon::netbroker broker_owns_endpoint_and_reports_status test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.7808215Z PASS [ 0.160s] ( 567/1156) spt-daemon::netbroker brain_dials_second_broker_over_loopback test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.7827552Z PASS [ 0.123s] ( 568/1156) spt-daemon::netbroker replayed_dial_op_is_deduped_across_brain_restart test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.7829307Z PASS [ 0.221s] ( 569/1156) spt-daemon sync::tests::select_refs_scopes_two_tiers test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.8747673Z PASS [ 0.259s] ( 570/1156) spt-daemon::access whitelist_refuses_exempts_replies_and_admits_listed test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:48.9646283Z PASS [ 0.254s] ( 571/1156) spt-daemon::netstream sender_brain_restart_redrive_is_exactly_once test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:49.0091786Z PASS [ 0.390s] ( 572/1156) spt-daemon::mesh staggered_offliner_still_meshes test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:49.0220493Z PASS [ 0.240s] ( 573/1156) spt-daemon::propagate rollback_offer_is_rejected_before_any_fetch test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:49.0393423Z PASS [ 1.085s] ( 574/1156) spt-daemon nethost::tests::loopback_tunnel_backpressures_without_loss test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:49.0624462Z PASS [ 0.445s] ( 575/1156) spt-daemon::mesh all_online_star_a_reaches_c_b_never_relays test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:49.0884291Z PASS [ 0.124s] ( 576/1156) spt-daemon::propagate tampered_relay_artifact_is_rejected_and_never_staged test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:49.1025175Z PASS [ 0.094s] ( 577/1156) spt-daemon::propagate untrusted_origin_gets_no_offer test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:49.1235030Z PASS [ 0.429s] ( 578/1156) spt-daemon::netstream receiver_brain_restart_is_gapless_and_exactly_once test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:49.1663621Z PASS [ 0.432s] ( 579/1156) spt-daemon::pairjoin daemon_hosted_responder_pairs_a_loopback_joiner_end_to_end test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:49.1874918Z PASS [ 0.458s] ( 580/1156) spt-daemon::notifsync notif_spools_converge_over_the_wire_and_dismiss_replicates test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:49.1980205Z PASS [ 0.074s] ( 581/1156) spt-daemon::reseed benign_offliner_is_reseeded_across_a_rotation test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:49.2316336Z PASS [ 0.210s] ( 582/1156) spt-daemon::propagate update_set_propagates_selected_platform_artifact test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:49.2514845Z PASS [ 0.377s] ( 583/1156) spt-daemon::propagate status_query_drives_the_convergence_table_end_to_end test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:49.2614539Z PASS [ 0.480s] ( 584/1156) spt-daemon::propagate chain_self_heal_propagates_with_gate_at_every_hop test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:49.2997915Z PASS [ 0.068s] ( 585/1156) spt-daemon::seedproofx both_members_prove_and_cache_the_shared_subnet test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:49.3243175Z PASS [ 0.063s] ( 586/1156) spt-daemon::seedproofx proven_verdict_is_the_shared_set test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:49.3271887Z PASS [ 0.225s] ( 587/1156) spt-daemon::replicate registries_converge_over_the_wire_and_the_lease_holds test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:49.3424043Z PASS [ 0.155s] ( 588/1156) spt-daemon::rosterprop roster_exchange_never_leaks_unproven_subnets test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:49.3425447Z PASS [ 0.144s] ( 589/1156) spt-daemon::rosterprop roster_propagates_transitively_on_connect test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:49.6446484Z PASS [ 0.302s] ( 590/1156) spt-daemon::wanmsg receiver_restart_replays_feed_without_double_delivery test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:49.6570121Z PASS [ 0.618s] ( 591/1156) spt-daemon::pump pump_and_dispatch_self_drive_the_subnet test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:49.7012811Z PASS [ 0.613s] ( 592/1156) spt-daemon::pumpdeadline pump_brain_times_out_when_broker_never_replies test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:49.7715990Z PASS [ 0.114s] ( 593/1156) spt-daemon::wanmsg wan_user_msg_from_unproven_origin_is_restamped_at_the_funnel test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:49.8980826Z PASS [ 0.253s] ( 594/1156) spt-daemon::wanmsg wan_message_lands_exactly_once_under_transport_origin test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:49.9053550Z PASS [ 0.008s] ( 595/1156) spt-live context::tests::direct_always_writes test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:49.9124604Z PASS [ 0.007s] ( 596/1156) spt-live context::tests::identified_write_stamps_advancing_vector test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:49.9167370Z PASS [ 0.004s] ( 597/1156) spt-live context::tests::llm_over_llm_writes test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:49.9210611Z PASS [ 0.004s] ( 598/1156) spt-live context::tests::llm_past_window_writes test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:49.9251631Z PASS [ 0.004s] ( 599/1156) spt-live context::tests::llm_within_window_suppressed test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:49.9298920Z PASS [ 0.005s] ( 600/1156) spt-live context::tests::pre_identity_write_stamps_v1_shape test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:49.9373617Z PASS [ 0.007s] ( 601/1156) spt-live context::tests::write_context_suppresses_stale_llm test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:49.9438243Z PASS [ 0.172s] ( 602/1156) spt-daemon::xfer push_survives_target_brain_restart_exactly_once test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:49.9470701Z PASS [ 0.620s] ( 603/1156) spt-daemon::sync torn_pull_recovers_by_repulling test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:49.9545112Z PASS [ 0.253s] ( 604/1156) spt-daemon::xfer fetch_lands_byte_identical_with_progress_both_ends test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:49.9587372Z PASS [ 0.004s] ( 605/1156) spt-live digest::tests::missing_source_file_is_read_error test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:49.9628160Z PASS [ 0.004s] ( 606/1156) spt-live digest::tests::no_source_errors test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:49.9691672Z PASS [ 0.025s] ( 607/1156) spt-live digest::tests::extracts_records_from_the_located_source test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:49.9722306Z PASS [ 0.025s] ( 608/1156) spt-live digest::tests::falls_back_to_history_locate_template test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:49.9896362Z PASS [ 0.027s] ( 609/1156) spt-live echo::tests::echo_child_is_recursion_guarded test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:49.9936377Z PASS [ 0.004s] ( 610/1156) spt-live echo::tests::provenance_is_stamped test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:49.9945269Z PASS [ 0.025s] ( 611/1156) spt-live echo::tests::echo_consumes_history_and_writes_commune test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:49.9970527Z PASS [ 0.025s] ( 612/1156) spt-live echo::tests::echo_nonzero_errors test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:50.0192600Z PASS [ 0.025s] ( 613/1156) spt-live history::tests::fetcher_yields_records test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:50.0216579Z PASS [ 0.025s] ( 614/1156) spt-live history::tests::locate_normalize_reads_and_normalizes test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:50.0233065Z PASS [ 0.004s] ( 615/1156) spt-live history::tests::missing_fetcher_field_errors test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:50.0258670Z PASS [ 0.004s] ( 616/1156) spt-live history::tests::native_missing_log_is_empty test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:50.0273295Z PASS [ 0.004s] ( 617/1156) spt-live history::tests::native_reads_logged_records test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:50.1571844Z PASS [ 0.130s] ( 618/1156) spt-live ingest::tests::commune_drop_is_ingested_and_deleted test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:50.1979357Z PASS [ 0.172s] ( 619/1156) spt-live ingest::tests::both_drops_ingested test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:50.2022722Z PASS [ 0.004s] ( 620/1156) spt-live ingest::tests::no_drops_is_empty test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:50.2474429Z PASS [ 0.310s] ( 621/1156) spt-live digest::tests::extractor_timeout_errors test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:50.2876101Z PASS [ 0.130s] ( 622/1156) spt-live ingest::tests::ingest_never_writes_the_live_role test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:50.2904527Z PASS [ 0.088s] ( 623/1156) spt-live ingest::tests::stale_commune_suppressed_but_deleted test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:50.2917148Z PASS [ 0.004s] ( 624/1156) spt-live inject::tests::long_body_is_capped test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:50.2949349Z PASS [ 0.004s] ( 625/1156) spt-live inject::tests::missing_perch_is_best_effort test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:50.2959923Z PASS [ 0.004s] ( 626/1156) spt-live inject::tests::tap_appends_a_context_entry test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:50.2987303Z PASS [ 0.004s] ( 627/1156) spt-live outbound::tests::empty_body_parses_to_empty_intent test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:50.2991438Z PASS [ 0.305s] ( 628/1156) spt-live history::tests::fetcher_timeout_errors test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:50.3010029Z PASS [ 0.005s] ( 629/1156) spt-live outbound::tests::malformed_and_chunk_lines_are_skipped test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:50.3026757Z PASS [ 0.004s] ( 630/1156) spt-live outbound::tests::non_authorable_types_are_ignored test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:50.3031917Z PASS [ 0.004s] ( 631/1156) spt-live outbound::tests::parses_reply_and_notify_in_order test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:50.3054148Z PASS [ 0.004s] ( 632/1156) spt-live outbound::tests::prose_only_yields_nothing test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:50.3071912Z PASS [ 0.004s] ( 633/1156) spt-live outbound::tests::spoofed_routing_attrs_are_unrepresentable test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:50.3072690Z PASS [ 0.004s] ( 634/1156) spt-live psyche::tests::prompt_includes_time_and_event test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:50.3094431Z PASS [ 0.004s] ( 635/1156) spt-live psyche::tests::prompt_without_event test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:50.3117966Z PASS [ 0.004s] ( 636/1156) spt-live pulse::tests::echo_gate_fires_exactly_once test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:50.3162857Z PASS [ 0.004s] ( 637/1156) spt-live pulse::tests::tick_reports_idle test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:50.3331575Z PASS [ 0.026s] ( 638/1156) spt-live psyche::tests::spawn_binds_nested_perch_and_sets_guard test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:50.3510205Z PASS [ 1.721s] ( 639/1156) spt-daemon::netbroker dial_to_a_black_holing_peer_fails_with_a_bounded_ordinary_error test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:50.4221900Z PASS [ 0.089s] ( 640/1156) spt-live reconcile::tests::no_conflict_is_a_noop test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:50.4403178Z PASS [ 0.131s] ( 641/1156) spt-live pulse::tests::tick_ingests_drops test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:50.4658598Z PASS [ 0.025s] ( 642/1156) spt-live resume::tests::continue_existing_resumes_session test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:50.4683206Z PASS [ 0.152s] ( 643/1156) spt-live reconcile::tests::failed_turn_preserves_everything test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:50.4912953Z PASS [ 1.149s] ( 644/1156) spt-daemon::sync two_tier_sync_lands_and_gate_refuses_server_side test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:50.4926862Z PASS [ 0.245s] ( 645/1156) spt-live ingest::tests::two_slice_drop_routes_per_tier test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:50.4971798Z PASS [ 0.004s] ( 646/1156) spt-live resume::tests::missing_key_errors_before_spawn test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:50.5168780Z PASS [ 0.025s] ( 647/1156) spt-live resume::tests::fresh_with_preload_launches_preloaded test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:50.5210573Z PASS [ 0.004s] ( 648/1156) spt-live signoff::tests::echo_precedes_signoff_compose test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:50.5253909Z PASS [ 0.004s] ( 649/1156) spt-live signoff::tests::missing_session_skips_echo test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:50.5296672Z PASS [ 0.004s] ( 650/1156) spt-live signoff::tests::recovered_self_is_not_signed_off test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:50.5336908Z PASS [ 0.004s] ( 651/1156) spt-live signoff::tests::stale_signoff_swept test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:50.5596686Z PASS [ 0.026s] ( 652/1156) spt-live turn::tests::empty_stdout_is_an_error test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:50.5668084Z PASS [ 0.216s] ( 653/1156) spt-live reconcile::tests::reconcile_merges_and_clears test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:50.5748549Z PASS [ 0.153s] ( 654/1156) spt-live reconcile::tests::suppressed_write_preserves_artifacts test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:50.5791118Z PASS [ 0.004s] ( 655/1156) spt-msg deliver::tests::deferred_send_validates test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:50.5848208Z PASS [ 0.025s] ( 656/1156) spt-live turn::tests::turn_captures_stdout test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:50.6074419Z PASS [ 0.141s] ( 657/1156) spt-live resume::tests::download_composes_two_tiers test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:50.6614608Z PASS [ 0.193s] ( 658/1156) spt-live resume::tests::download_renders_role_first_then_live_then_project test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:50.6786887Z PASS [ 0.112s] ( 659/1156) spt-msg deliver::tests::deferred_send_skips_stream_drain_survives_for_hook test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:50.6826923Z PASS [ 0.004s] ( 660/1156) spt-msg emit::tests::anonymous_still_enveloped test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:50.6866244Z PASS [ 0.004s] ( 661/1156) spt-msg emit::tests::multiline_body_escapes_and_round_trips test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:50.6905543Z PASS [ 0.004s] ( 662/1156) spt-msg emit::tests::oversized_listener_line_chunks_into_event_parts test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:50.6941019Z PASS [ 0.004s] ( 663/1156) spt-msg emit::tests::structural_renders_msg_envelope test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:50.6976974Z PASS [ 0.004s] ( 664/1156) spt-msg emit::tests::typed_body_from_wins_over_structural_from_no_double_wrap test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:50.7018890Z PASS [ 0.004s] ( 665/1156) spt-msg emit::tests::user_msg_envelope_renders_verbatim_on_both_edges test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:50.7055610Z PASS [ 0.004s] ( 666/1156) spt-msg emit::tests::whole_render_never_chunks test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:50.7324538Z PASS [ 0.153s] ( 667/1156) spt-msg deliver::tests::offline_existing_perch_spools test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:50.7582249Z PASS [ 1.434s] ( 668/1156) spt-daemon::sync concurrent_writes_reconcile_on_elected_node_and_converge test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:50.7634846Z PASS [ 0.266s] ( 669/1156) spt-live signoff::tests::boundary_writes_resume_commune test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:50.7952188Z PASS [ 0.210s] ( 670/1156) spt-msg deliver::tests::online_delivers_via_tcp_without_spooling test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:50.8214238Z PASS [ 0.160s] ( 671/1156) spt-msg deliver::tests::send_outcome_mapping test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:50.8217254Z PASS [ 0.214s] ( 672/1156) spt-msg deliver::tests::recycled_pid_address_does_not_misdeliver test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:50.8824345Z PASS [ 0.177s] ( 673/1156) spt-msg listener::tests::bind_registers_and_round_trips test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:50.9259271Z PASS [ 0.193s] ( 674/1156) spt-msg listener::tests::blocking_accepts_within_window test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:50.9261198Z PASS [ 0.163s] ( 675/1156) spt-msg listener::tests::drop_unregisters_address test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.0205785Z PASS [ 0.262s] ( 676/1156) spt-msg listener::tests::blocking_times_out_when_idle test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.0246966Z PASS [ 0.004s] ( 677/1156) spt-msg ring::tests::ring_no_perch test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.0990316Z PASS [ 0.277s] ( 678/1156) spt-msg ready::tests::recv_gets_live_tcp_message test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.1141015Z PASS [ 0.292s] ( 679/1156) spt-msg ready::tests::soft_cleanup_preserves_spool_and_info test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.1180846Z PASS [ 0.004s] ( 680/1156) spt-msg wire::tests::decode_rejects_overrunning_from_len test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.1218710Z PASS [ 0.004s] ( 681/1156) spt-msg wire::tests::encode_decode_round_trips_structural test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.1219568Z PASS [ 0.239s] ( 682/1156) spt-msg ready::tests::start_ledgers_a_boot_session_row test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.1259975Z PASS [ 0.004s] ( 683/1156) spt-msg wire::tests::encode_empty_from_is_anonymous test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.1260692Z PASS [ 0.004s] ( 684/1156) spt-msg wire::tests::frame_round_trips_over_loopback test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.1297210Z PASS [ 0.004s] ( 685/1156) spt-msg wire::tests::typed_event_body_rides_verbatim test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.1298798Z PASS [ 0.004s] ( 686/1156) spt-msg wire::tests::oversized_length_prefix_rejected test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.1412765Z PASS [ 0.346s] ( 687/1156) spt-msg ready::tests::backlog_drains_on_start test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.1596827Z PASS [ 0.215s] ( 688/1156) spt-msg ready::tests::start_registers_resolvable_perch test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.1598250Z PASS [ 0.018s] ( 689/1156) spt-net net::attach::tests::attach_intents_round_trip test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.1600134Z PASS [ 0.019s] ( 690/1156) spt-net net::attach::tests::kick_take_and_displaced_round_trip test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.1664816Z PASS [ 0.007s] ( 691/1156) spt-net net::attach::tests::record_split_across_chunks_reassembles test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.1669508Z PASS [ 0.007s] ( 692/1156) spt-net net::attach::tests::records_round_trip_and_unknown_kind_is_skipped test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.1727387Z PASS [ 0.006s] ( 693/1156) spt-net net::attach::tests::request_without_intent_defaults_to_control test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.1794820Z PASS [ 0.253s] ( 694/1156) spt-msg ring::tests::ring_gets_reply_and_cleans_up test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.1851029Z PASS [ 0.012s] ( 695/1156) spt-net net::endpoint::tests::keep_alive_is_under_idle_timeout test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.1915918Z PASS [ 0.006s] ( 696/1156) spt-net net::mesh::seedproof::tests::cross_connection_replay_fails test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.1975038Z PASS [ 0.006s] ( 697/1156) spt-net net::mesh::seedproof::tests::forged_proof_fails test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.2031281Z PASS [ 0.006s] ( 698/1156) spt-net net::mesh::seedproof::tests::frame_codec_round_trips_and_rejects_garbage test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.2102541Z PASS [ 0.007s] ( 699/1156) spt-net net::mesh::seedproof::tests::hello_frame_round_trips_and_rejects_malformed test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.2163743Z PASS [ 0.006s] ( 700/1156) spt-net net::mesh::seedproof::tests::mk_derivation_is_deterministic_and_input_sensitive test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.2222547Z PASS [ 0.006s] ( 701/1156) spt-net net::mesh::seedproof::tests::mutual_requires_both_sides test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.2272961Z PASS [ 0.203s] ( 702/1156) spt-msg ring::tests::ring_offline_target_queues_and_cleans_up test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.2285650Z PASS [ 0.006s] ( 703/1156) spt-net net::mesh::seedproof::tests::proofset_frame_round_trips_and_rejects_malformed test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.2340895Z PASS [ 0.005s] ( 704/1156) spt-net net::mesh::seedproof::tests::wrong_epoch_fails test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.2341529Z PASS [ 0.007s] ( 705/1156) spt-net net::mesh::seedproof::tests::valid_proof_verifies_and_roles_differ test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.2402594Z PASS [ 0.006s] ( 706/1156) spt-net net::notif::tests::forged_origin_field_is_inert test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.2403298Z PASS [ 0.006s] ( 707/1156) spt-net net::mesh::seedproof::tests::wrong_subnet_fails test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.2464201Z PASS [ 0.006s] ( 708/1156) spt-net net::notif::tests::record_split_across_chunks_reassembles test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.2466469Z PASS [ 0.006s] ( 709/1156) spt-net net::notif::tests::record_round_trips_and_unknown_kind_is_skipped test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.2527727Z PASS [ 0.006s] ( 710/1156) spt-net net::pairing::meet::tests::key_seed_is_not_the_token test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.2529568Z PASS [ 0.007s] ( 711/1156) spt-net net::pairing::meet::tests::derived_identity_is_deterministic_and_input_bound test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.2603276Z PASS [ 0.007s] ( 712/1156) spt-net net::pairing::meet::tests::skewed_window_contains_the_listener_id test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.2617409Z PASS [ 0.095s] ( 713/1156) spt-net net::endpoint::tests::endpoint_id_binds_to_identity test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.2669868Z PASS [ 0.007s] ( 714/1156) spt-net net::pairing::ntp::tests::offset_applies_signed_and_saturates test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.2674956Z PASS [ 0.006s] ( 715/1156) spt-net net::pairing::ntp::tests::parse_rejects_short_and_zeroed_replies test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.2685238Z PASS [ 2.103s] ( 716/1156) spt-daemon::reseed revoked_node_is_denied_and_never_reseeded test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.2735163Z PASS [ 0.006s] ( 717/1156) spt-net net::pairing::ntp::tests::sntp_query_reads_the_transmit_timestamp test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.2736916Z PASS [ 0.005s] ( 718/1156) spt-net net::pairing::ratelimit::tests::abandoned_ceremony_is_reclaimed_and_charged test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.2795290Z PASS [ 0.006s] ( 719/1156) spt-net net::pairing::ratelimit::tests::backoff_curve_doubles_then_caps test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.2837725Z PASS [ 0.010s] ( 720/1156) spt-net net::pairing::ratelimit::tests::backoff_is_per_subnet test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.2850686Z PASS [ 0.006s] ( 721/1156) spt-net net::pairing::ratelimit::tests::failures_impose_exponential_backoff test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.2900761Z PASS [ 0.006s] ( 722/1156) spt-net net::pairing::ratelimit::tests::first_ceremony_is_free_and_success_resets test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.2914847Z PASS [ 0.006s] ( 723/1156) spt-net net::pairing::ratelimit::tests::one_active_ceremony_per_subnet test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.2968178Z PASS [ 0.007s] ( 724/1156) spt-net net::pairing::ratelimit::tests::success_clears_accumulated_backoff test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.2982910Z PASS [ 0.007s] ( 725/1156) spt-net net::pairing::rendezvous::tests::distinct_same_length_names_diverge test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.3032554Z PASS [ 0.006s] ( 726/1156) spt-net net::pairing::rendezvous::tests::length_prefix_prevents_boundary_collision test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.3043089Z PASS [ 0.006s] ( 727/1156) spt-net net::pairing::rendezvous::tests::token_is_deterministic test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.3095875Z PASS [ 0.006s] ( 728/1156) spt-net net::pairing::rendezvous::tests::token_varies_with_name_and_step test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.3101757Z PASS [ 0.006s] ( 729/1156) spt-net net::pairing::rendezvous::tests::window_is_three_adjacent_tokens test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.3122768Z PASS [ 0.133s] ( 730/1156) spt-net net::endpoint::tests::two_endpoints_loopback_echo test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.3394283Z PASS [ 2.088s] ( 731/1156) spt-daemon::seedproofx no_shared_subnet_is_dropped test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.3519839Z PASS [ 0.042s] ( 732/1156) spt-net net::pairing::spake::tests::reflected_role_is_rejected_by_pake test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.3647809Z PASS [ 0.112s] ( 733/1156) spt-net net::pairing::meet::tests::meet_redirects_joiner_to_the_real_pairing_endpoint test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.3869051Z PASS [ 0.077s] ( 734/1156) spt-net net::pairing::spake::tests::matching_code_pairs_and_agrees_on_key test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.3881485Z PASS [ 0.076s] ( 735/1156) spt-net net::pairing::spake::tests::stale_epoch_fails test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.4042393Z PASS [ 2.104s] ( 736/1156) spt-daemon::seedproofx wrong_seed_is_dropped test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.4053363Z PASS [ 0.276s] ( 737/1156) spt-msg::killer_quickstart offline_then_online_delivers_backlog test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.4123891Z PASS [ 0.007s] ( 738/1156) spt-net net::pairing::totp::tests::debug_redacts_seed test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.4124760Z PASS [ 0.008s] ( 739/1156) spt-net net::pairing::totp::tests::code_at_is_six_zero_padded_digits test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.4192228Z PASS [ 0.080s] ( 740/1156) spt-net net::pairing::spake::tests::stale_step_fails test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.4204061Z PASS [ 0.008s] ( 741/1156) spt-net net::pairing::totp::tests::matches_rfc6238_appendix_b_vectors test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.4207476Z PASS [ 0.008s] ( 742/1156) spt-net net::pairing::totp::tests::generated_seeds_are_distinct test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.4272390Z PASS [ 0.008s] ( 743/1156) spt-net net::pairing::totp::tests::otpauth_uri_is_well_formed_and_encoded test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.4273303Z PASS [ 0.006s] ( 744/1156) spt-net net::pairing::totp::tests::time_step_is_floor_unix_over_period test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.4280126Z PASS [ 0.008s] ( 745/1156) spt-net net::pairing::totp::tests::seed_round_trips_through_base32 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.4311063Z PASS [ 0.079s] ( 746/1156) spt-net net::pairing::spake::tests::substituted_pubkey_fails test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.4342453Z PASS [ 0.007s] ( 747/1156) spt-net net::pairing::totp::tests::window_accepts_plus_minus_one_only test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.4351894Z PASS [ 0.008s] ( 748/1156) spt-net net::pairing::transcript::tests::diverged_shared_secret_fails_verification test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.4370093Z PASS [ 0.009s] ( 749/1156) spt-net net::pairing::transcript::tests::each_bound_field_changes_the_tag test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.4387814Z PASS [ 0.008s] ( 750/1156) spt-net net::pairing::transcript::tests::length_prefixing_prevents_boundary_collision test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.4431872Z PASS [ 0.009s] ( 751/1156) spt-net net::pairing::transcript::tests::matching_tag_verifies_and_roles_differ test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.4433022Z PASS [ 0.008s] ( 752/1156) spt-net net::pairing::transcript::tests::message_order_is_bound test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.4449468Z PASS [ 0.008s] ( 753/1156) spt-net net::pairing::transcript::tests::pake_identity_binds_role_and_context test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.4487893Z PASS [ 0.084s] ( 754/1156) spt-net net::pairing::spake::tests::tampered_tag_fails test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.4513167Z PASS [ 0.008s] ( 755/1156) spt-net net::pairing::wire::tests::frame_codec_round_trips_and_rejects_garbage test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.4514922Z PASS [ 0.007s] ( 756/1156) spt-net net::pairing::wire::tests::hello_intro_is_additive_and_roundtrips test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.4593289Z PASS [ 0.008s] ( 757/1156) spt-net net::pairing::wire::tests::seed_frame_roster_is_additive_and_roundtrips test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.4669880Z PASS [ 0.080s] ( 758/1156) spt-net net::pairing::spake::tests::wrong_code_fails_at_confirmation_not_spake test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.4695318Z PASS [ 0.081s] ( 759/1156) spt-net net::pairing::spake::tests::wrong_subnet_fails test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.4884241Z PASS [ 0.358s] ( 760/1156) spt-msg::killer_quickstart two_agents_exchange_message_tcp_and_spool test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.4967153Z PASS [ 0.008s] ( 761/1156) spt-net net::registry::tests::advertise_if_visible_gates_before_join test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.5041164Z PASS [ 0.405s] ( 762/1156) spt-msg ring::tests::ring_timeout_cleans_up test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.5055460Z PASS [ 0.009s] ( 763/1156) spt-net net::registry::tests::distinct_nodes_are_separate_instances test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.5058021Z PASS [ 0.067s] ( 764/1156) spt-net net::pairing::wire::tests::busy_subnet_refuses_ceremony test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.5109042Z PASS [ 0.007s] ( 765/1156) spt-net net::registry::tests::equal_epoch_replay_is_stale_noop test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.5128790Z PASS [ 0.007s] ( 766/1156) spt-net net::registry::tests::evicting_dead_node_clears_phantom_ambiguity test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.5130284Z PASS [ 0.007s] ( 767/1156) spt-net net::registry::tests::excluded_endpoint_is_not_routable_even_via_node_pin test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.5193490Z PASS [ 0.008s] ( 768/1156) spt-net net::registry::tests::exclusion_prunes_cross_subnet_ambiguity test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.5194616Z PASS [ 0.006s] ( 769/1156) spt-net net::registry::tests::join_colliding_id_on_other_node_refuses_untouched test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.5207288Z PASS [ 0.008s] ( 770/1156) spt-net net::registry::tests::join_collides_even_with_offline_holder test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.5267486Z PASS [ 0.067s] ( 771/1156) spt-net net::pairing::wire::tests::stale_step_is_rejected test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.5273811Z PASS [ 0.008s] ( 772/1156) spt-net net::registry::tests::join_fresh_id_is_inserted test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.5277247Z PASS [ 0.008s] ( 773/1156) spt-net net::registry::tests::join_same_name_in_different_subnet_is_legal test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.5295571Z PASS [ 0.009s] ( 774/1156) spt-net net::registry::tests::join_same_node_falls_through_to_lease test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.5350199Z PASS [ 0.007s] ( 775/1156) spt-net net::registry::tests::node_label_rides_the_lease_and_serde test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.5350900Z PASS [ 0.008s] ( 776/1156) spt-net net::registry::tests::newer_epoch_supersedes_same_node test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.5353948Z PASS [ 0.008s] ( 777/1156) spt-net net::registry::tests::node_level_label_lease_persist_prune_and_serde test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.5377199Z PASS [ 0.008s] ( 778/1156) spt-net net::registry::tests::node_qualifier_accepts_label_and_prefix_refuses_shared test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.5417571Z PASS [ 0.074s] ( 779/1156) spt-net net::pairing::wire::tests::unknown_subnet_is_rejected test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.5427721Z PASS [ 0.007s] ( 780/1156) spt-net net::registry::tests::rename_collision_refuses_whole_ripple test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.5428917Z PASS [ 0.008s] ( 781/1156) spt-net net::registry::tests::presence_datum_rides_the_lease_and_serde test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.5430244Z PASS [ 0.008s] ( 782/1156) spt-net net::registry::tests::registry_serde_roundtrips test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.5465282Z PASS [ 0.008s] ( 783/1156) spt-net net::registry::tests::rename_ripples_rows_across_advertised_subnets test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.5478783Z PASS [ 0.007s] ( 784/1156) spt-net net::registry::tests::resolve_across_bare_id_in_two_subnets_refuses test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.5493360Z PASS [ 0.007s] ( 785/1156) spt-net net::registry::tests::resolve_across_unique_id_resolves test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.5502187Z PASS [ 0.008s] ( 786/1156) spt-net net::registry::tests::resolve_across_subnet_qualified_routes_there test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.5503158Z PASS [ 0.007s] ( 787/1156) spt-net net::registry::tests::resolve_multiple_live_nodes_refuses test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.5578647Z PASS [ 0.009s] ( 788/1156) spt-net net::registry::tests::resolve_node_qualifier_pins_and_offline_is_not_found test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.5581152Z PASS [ 0.008s] ( 789/1156) spt-net net::registry::tests::resolve_prefers_local_instance test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.5582937Z PASS [ 0.007s] ( 790/1156) spt-net net::registry::tests::resolve_sole_live_remote_and_skips_offline test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.5584082Z PASS [ 0.008s] ( 791/1156) spt-net net::registry::tests::resource_projection_filters_hidden_and_offline test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.5585184Z PASS [ 0.008s] ( 792/1156) spt-net net::registry::tests::resource_blurb_rides_the_lease_and_serde test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.5635289Z PASS [ 0.008s] ( 793/1156) spt-net net::registry::tests::stale_active_cannot_clobber_newer_offline test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.5636419Z PASS [ 0.008s] ( 794/1156) spt-net net::registry::tests::resource_projection_threads_node_label test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.5640067Z PASS [ 0.007s] ( 795/1156) spt-net net::registry::tests::suspended_is_addressable_and_roundtrips test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.5659566Z PASS [ 0.008s] ( 796/1156) spt-net net::replicate::tests::apply_routes_by_subnet_and_drops_non_member test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.5661622Z PASS [ 0.008s] ( 797/1156) spt-net net::replicate::tests::decoder_survives_chunk_splits_and_corrupt_lines test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.5724629Z PASS [ 0.009s] ( 798/1156) spt-net net::replicate::tests::stale_wire_update_cannot_clobber_newer_state test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.5725731Z PASS [ 0.008s] ( 799/1156) spt-net net::replicate::tests::update_round_trips_and_tolerates_unknown_field test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.5726746Z PASS [ 0.009s] ( 800/1156) spt-net net::replicate::tests::feed_carries_instances_and_node_labels_wire_compat test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.5727654Z PASS [ 0.007s] ( 801/1156) spt-net net::rest::tests::records_round_trip_and_degrade test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.5738114Z PASS [ 0.008s] ( 802/1156) spt-net net::serveprobe::tests::records_round_trip_and_degrade test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.5783852Z PASS [ 0.310s] ( 803/1156) spt-net net::pairing::ntp::tests::unreachable_server_falls_back test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.5803115Z PASS [ 0.008s] ( 804/1156) spt-net net::sync::tests::record_split_across_chunks_reassembles test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.5804376Z PASS [ 0.008s] ( 805/1156) spt-net net::sync::tests::forged_origin_field_is_inert test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.5805515Z PASS [ 0.008s] ( 806/1156) spt-net net::shelllink::tests::records_round_trip_and_degrade test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.5806699Z PASS [ 0.008s] ( 807/1156) spt-net net::sync::tests::records_round_trip_and_unknown_kind_is_skipped test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.5816328Z PASS [ 0.008s] ( 808/1156) spt-net net::update::tests::forged_origin_field_is_inert test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.5884992Z PASS [ 0.008s] ( 809/1156) spt-net net::wanmsg::tests::route_splits_local_and_remote_and_passes_refusals test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.5886495Z PASS [ 0.008s] ( 810/1156) spt-net net::wanmsg::tests::message_round_trips_and_tolerates_unknown_field test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.5887182Z PASS [ 0.008s] ( 811/1156) spt-net net::wanmsg::tests::forged_origin_field_is_inert test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.5888001Z PASS [ 0.010s] ( 812/1156) spt-net net::update::tests::record_split_across_chunks_reassembles test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.5893246Z PASS [ 0.008s] ( 813/1156) spt-net net::xfer::tests::forged_origin_field_is_inert test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.5894120Z PASS [ 0.009s] ( 814/1156) spt-net net::update::tests::records_round_trip_and_unknown_kind_is_skipped test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.5944347Z PASS [ 0.005s] ( 815/1156) spt-proto addr::tests::parses_every_qualifier_combination test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.5948490Z PASS [ 0.005s] ( 816/1156) spt-proto addr::tests::rejects_empty_or_bad_components test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.5949421Z PASS [ 0.005s] ( 817/1156) spt-proto addr::tests::rejects_doubled_delimiters test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.5963107Z PASS [ 0.153s] ( 818/1156) spt-net net::pairing::wire::tests::create_new_then_join_learns_named_subnet test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.5964417Z PASS [ 0.007s] ( 819/1156) spt-proto addr::tests::display_round_trips test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.5978282Z PASS [ 0.008s] ( 820/1156) spt-net net::xfer::tests::records_round_trip_and_unknown_kind_is_skipped test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.5983061Z PASS [ 0.010s] ( 821/1156) spt-net net::xfer::tests::record_split_across_chunks_reassembles test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6004770Z PASS [ 0.005s] ( 822/1156) spt-proto chunk::tests::orphan_group_without_head_is_dropped test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6006153Z PASS [ 0.005s] ( 823/1156) spt-proto chunk::tests::missing_middle_part_is_dropped test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6008191Z PASS [ 0.152s] ( 824/1156) spt-net net::pairing::wire::tests::loopback_pairs_and_transfers_seed_and_roster test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6009374Z PASS [ 0.007s] ( 825/1156) spt-proto chunk::tests::malformed_parts_return_none test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6010554Z PASS [ 0.150s] ( 826/1156) spt-net net::pairing::wire::tests::repair_member_keeps_seed test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6037085Z PASS [ 0.006s] ( 827/1156) spt-proto chunk::tests::short_line_passes_through_unchunked test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6039327Z PASS [ 0.007s] ( 828/1156) spt-proto chunk::tests::reassemble_stream_handles_mixed_traffic test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6040872Z PASS [ 0.008s] ( 829/1156) spt-proto chunk::tests::oversized_line_splits_and_each_part_is_well_formed_and_bounded test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6058372Z PASS [ 0.005s] ( 830/1156) spt-proto endpoint::tests::agent_vs_shell_split test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6060052Z PASS [ 0.005s] ( 831/1156) spt-proto endpoint::tests::day_one_tags_round_trip test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6066565Z PASS [ 0.006s] ( 832/1156) spt-proto endpoint::tests::broker_and_node_families test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6067286Z PASS [ 0.006s] ( 833/1156) spt-proto endpoint::tests::shell_kind_round_trips test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6068050Z PASS [ 0.005s] ( 834/1156) spt-proto endpoint::tests::unknown_tag_tolerated_and_preserved test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6088596Z PASS [ 0.005s] ( 835/1156) spt-proto envelope::tests::body_escape_unescape_round_trips_html_and_newlines test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6092504Z PASS [ 0.005s] ( 836/1156) spt-proto envelope::tests::decode_is_amp_last_so_literal_entities_do_not_double_decode test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6103346Z PASS [ 0.006s] ( 837/1156) spt-proto envelope::tests::body_escape_is_cr_linesafe test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6114450Z PASS [ 0.005s] ( 838/1156) spt-proto envelope::tests::from_attr_returns_none_on_garbage_or_empty test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6115569Z PASS [ 0.005s] ( 839/1156) spt-proto envelope::tests::parser_empty_body_is_some_empty_and_nested_tags_preserved test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6116542Z PASS [ 0.005s] ( 840/1156) spt-proto envelope::tests::parser_both_tags_present test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6117362Z PASS [ 0.006s] ( 841/1156) spt-proto envelope::tests::from_attr_unescape_is_amp_last test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6121814Z PASS [ 0.005s] ( 842/1156) spt-proto envelope::tests::parser_no_tags_falls_back_whole_payload_to_live test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6146283Z PASS [ 0.005s] ( 843/1156) spt-proto event::tests::alarm_event_round_trips test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6150585Z PASS [ 0.005s] ( 844/1156) spt-proto envelope::tests::parser_out_of_order_tags_both_extracted test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6154632Z PASS [ 0.006s] ( 845/1156) spt-proto envelope::tests::parser_unclosed_live_tag_does_not_scoop_project test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6166555Z PASS [ 0.005s] ( 846/1156) spt-proto event::tests::body_with_literal_event_tokens_round_trips test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6169223Z PASS [ 0.005s] ( 847/1156) spt-proto event::tests::attr_decode_is_amp_last test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6170965Z PASS [ 0.005s] ( 848/1156) spt-proto event::tests::attr_order_preserved test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6191006Z PASS [ 0.006s] ( 849/1156) spt-proto event::tests::empty_body_envelope_parses test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6192090Z PASS [ 0.006s] ( 850/1156) spt-proto event::tests::malformed_inputs_return_none_without_panic test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6202698Z PASS [ 0.005s] ( 851/1156) spt-proto event::tests::typed_envelope_detected_and_parsed test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6205489Z PASS [ 0.005s] ( 852/1156) spt-proto event::tests::psyche_authorable_types_are_reply_and_notify_only test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6206610Z PASS [ 0.006s] ( 853/1156) spt-proto event::tests::msg_event_round_trips test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6224482Z PASS [ 0.006s] ( 854/1156) spt-proto event::tests::typed_predicate_rejects_partials test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6227257Z PASS [ 0.006s] ( 855/1156) spt-proto event::tests::user_msg_envelope_is_n_minus_one_tolerant test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6229447Z PASS [ 0.006s] ( 856/1156) spt-proto event::tests::user_msg_gate_is_not_payload_trusted test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6230410Z PASS [ 0.005s] ( 857/1156) spt-proto event::tests::user_msg_identity_gate_truth_table test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6260451Z PASS [ 0.006s] ( 858/1156) spt-proto event::tests::user_msg_event_round_trips test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6270813Z PASS [ 0.006s] ( 859/1156) spt-proto id::tests::accepts_japanese_scripts test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6273106Z PASS [ 0.006s] ( 860/1156) spt-proto id::tests::accepts_plain_and_composite_ids test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6273980Z PASS [ 0.006s] ( 861/1156) spt-proto id::tests::rejects_empty_and_overlong test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6275030Z PASS [ 0.158s] ( 862/1156) spt-net net::pairing::wire::tests::wrong_code_fails_and_records_no_membership test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6283680Z PASS [ 0.005s] ( 863/1156) spt-proto identity::tests::bad_inputs_error_without_panic test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6285523Z PASS [ 0.006s] ( 864/1156) spt-proto id::tests::reports_bad_char_position test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6286301Z PASS [ 0.006s] ( 865/1156) spt-proto id::tests::reserves_address_delimiters test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6287165Z PASS [ 0.006s] ( 866/1156) spt-proto id::tests::rejects_path_whitespace_and_control test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6315603Z PASS [ 0.005s] ( 867/1156) spt-proto payload::tests::base64_known_vectors test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6319107Z PASS [ 0.005s] ( 868/1156) spt-proto payload::tests::binary_blob_round_trips_all_byte_values test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6321137Z PASS [ 0.006s] ( 869/1156) spt-proto identity::tests::public_key_hex_round_trips test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6335683Z PASS [ 0.005s] ( 870/1156) spt-proto payload::tests::blob_padding_lengths_round_trip test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6351770Z PASS [ 0.007s] ( 871/1156) spt-proto payload::tests::text_payload_round_trips test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6352623Z PASS [ 0.006s] ( 872/1156) spt-proto payload::tests::unknown_or_malformed_decodes_to_none test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6353417Z PASS [ 0.007s] ( 873/1156) spt-proto payload::tests::command_payload_round_trips test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6368322Z PASS [ 0.005s] ( 874/1156) spt-proto version::tests::current_version_self_compatible test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6369890Z PASS [ 0.005s] ( 875/1156) spt-proto version::tests::window_floor_saturates_at_zero test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6383960Z PASS [ 0.007s] ( 876/1156) spt-proto version::tests::n_minus_one_window_accepts_and_rejects test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6386729Z PASS [ 0.015s] ( 877/1156) spt-proto identity::tests::known_answer_fixed_seed_is_stable test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6396401Z PASS [ 0.041s] ( 878/1156) spt-proto chunk::tests::split_then_reassemble_is_byte_identity test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6458272Z PASS [ 0.010s] ( 879/1156) spt-runtime manifest::tests::fetcher_strategy_requires_fetcher_field test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6460720Z PASS [ 0.009s] ( 880/1156) spt-runtime manifest::tests::harness_kind_with_shell_section_fails_validation test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6462123Z PASS [ 0.011s] ( 881/1156) spt-runtime manifest::tests::digest_section_validation_errors test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6467922Z PASS [ 0.007s] ( 882/1156) spt-runtime manifest::tests::inject_env_without_value_fails_validation test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6468532Z PASS [ 0.011s] ( 883/1156) spt-runtime manifest::tests::digest_section_source_resolution test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6469268Z PASS [ 0.010s] ( 884/1156) spt-runtime manifest::tests::harness_fixture_parses_all_sections test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6481369Z PASS [ 0.009s] ( 885/1156) spt-runtime manifest::tests::host_binaries_optional_and_n1_safe test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6482538Z PASS [ 0.015s] ( 886/1156) spt-runtime manifest::tests::checked_in_schema_is_current test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6521823Z PASS [ 0.006s] ( 887/1156) spt-runtime manifest::tests::minimal_header_only_manifest_is_valid test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6524156Z PASS [ 0.006s] ( 888/1156) spt-runtime manifest::tests::per_capability_act_gate_parses_and_validates test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6527696Z PASS [ 0.007s] ( 889/1156) spt-runtime manifest::tests::message_idle_translation_binary_opt_in test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6545401Z PASS [ 0.007s] ( 890/1156) spt-runtime manifest::tests::profile_overlays_hints_wholesale test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6546848Z PASS [ 0.006s] ( 891/1156) spt-runtime manifest::tests::shell_fixture_parses test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6547882Z PASS [ 0.008s] ( 892/1156) spt-runtime manifest::tests::round_trips_through_toml test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6549265Z PASS [ 0.007s] ( 893/1156) spt-runtime manifest::tests::session_resume_role_parses_roundtrips_and_is_backcompat test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6577751Z PASS [ 0.019s] ( 894/1156) spt-runtime manifest::tests::hint_keyword_matching test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6603053Z PASS [ 0.013s] ( 895/1156) spt-runtime manifest::tests::manifest_schema_shape test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6604051Z PASS [ 0.007s] ( 896/1156) spt-runtime manifest::tests::shell_kind_without_shell_section_fails_validation test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6604966Z PASS [ 0.007s] ( 897/1156) spt-runtime manifest::tests::shell_tunnel_opt_in test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6605839Z PASS [ 0.006s] ( 898/1156) spt-runtime manifest::tests::unknown_enum_variant_is_an_error_not_a_panic test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6609527Z PASS [ 0.008s] ( 899/1156) spt-runtime manifest::tests::shortcut_basename_optional_with_default test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6611040Z PASS [ 0.006s] ( 900/1156) spt-runtime manifest::tests::update_avenue_content_signing_fields test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6615387Z PASS [ 0.006s] ( 901/1156) spt-runtime manifest::tests::update_avenue_gh_release_fields test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6628261Z PASS [ 0.009s] ( 902/1156) spt-runtime manifest::tests::syntactically_broken_toml_is_an_error_not_a_panic test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6664734Z PASS [ 0.006s] ( 903/1156) spt-runtime profile::tests::profile_overlays_strings test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6665917Z PASS [ 0.005s] ( 904/1156) spt-runtime profile::tests::split_option_first_colon test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6666900Z PASS [ 0.008s] ( 905/1156) spt-runtime profile::tests::leaf_replace_contract test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6667783Z PASS [ 0.007s] ( 906/1156) spt-runtime profile::tests::resolve_shipped_profile_applies_overlay test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6669417Z PASS [ 0.008s] ( 907/1156) spt-runtime profile::tests::file_pointer_recognized_only_for_single_file_key_table test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6700808Z PASS [ 0.006s] ( 908/1156) spt-runtime profile::tests::string_dot_path_read_write test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6704269Z PASS [ 0.010s] ( 909/1156) spt-runtime profile::tests::deep_nested_leaf_replace test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6705355Z PASS [ 0.007s] ( 910/1156) spt-runtime profile::tests::resolve_unknown_profile_errors test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6706304Z PASS [ 0.006s] ( 911/1156) spt-runtime profile::tests::tighten_only_allows_tightening test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6708862Z PASS [ 0.044s] ( 912/1156) spt-proto identity::tests::sign_verify_round_trip test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6738494Z PASS [ 0.007s] ( 913/1156) spt-runtime profile::tests::tighten_only_refuses_loosened_require_approval test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6739996Z PASS [ 0.006s] ( 914/1156) spt-runtime registry::tests::invalid_manifest_records_nothing test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6757059Z PASS [ 0.009s] ( 915/1156) spt-runtime registry::tests::create_local_profile_guards test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6763477Z PASS [ 0.009s] ( 916/1156) spt-runtime registry::tests::file_backed_string_reads_contents_lazily test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6765029Z PASS [ 0.010s] ( 917/1156) spt-runtime registry::tests::cross_adapter_fallback_target_resolves_adapter_and_profile test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6766054Z PASS [ 0.009s] ( 918/1156) spt-runtime registry::tests::delete_local_profile_rules test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6766974Z PASS [ 0.009s] ( 919/1156) spt-runtime registry::tests::deregister_is_soft_and_readd_reactivates test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6769549Z PASS [ 0.010s] ( 920/1156) spt-runtime profile::tests::tighten_only_refuses_loosened_over_cap test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6788341Z PASS [ 0.009s] ( 921/1156) spt-runtime registry::tests::local_profile_overrides_a_shipped_file_pointer test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6796281Z PASS [ 0.009s] ( 922/1156) spt-runtime registry::tests::local_profile_survives_readd test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6818625Z PASS [ 0.008s] ( 923/1156) spt-runtime registry::tests::pointer_missing_manifest_is_deferred_not_cryptic test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6820329Z PASS [ 0.008s] ( 924/1156) spt-runtime registry::tests::missing_string_file_skips_at_read_without_error test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6835004Z PASS [ 0.007s] ( 925/1156) spt-runtime registry::tests::string_file_pointer_escaping_the_dir_is_refused_at_register test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6842889Z PASS [ 0.009s] ( 926/1156) spt-runtime registry::tests::register_copy_vs_pointer_by_avenue test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6847085Z PASS [ 0.008s] ( 927/1156) spt-runtime registry::tests::resolve_option_in_matches_disk test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6856448Z PASS [ 0.006s] ( 928/1156) spt-runtime resolve::tests::normalize_folds_case_and_stems_first_dot test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6863195Z PASS [ 0.010s] ( 929/1156) spt-runtime registry::tests::resolve_option_bare_shipped_and_local test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6868472Z PASS [ 0.008s] ( 930/1156) spt-runtime resolve::tests::no_candidate_when_no_adapter_hosts_binary test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6877862Z PASS [ 0.010s] ( 931/1156) spt-runtime resolve::tests::fallback_picks_freshest_then_name test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6898121Z PASS [ 0.008s] ( 932/1156) spt-runtime resolve::tests::pointer_is_sibling_to_adapter_dirs test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6907804Z PASS [ 0.013s] ( 933/1156) spt-runtime registry::tests::strings_get_set_through_overlay test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6908810Z PASS [ 0.007s] ( 934/1156) spt-runtime resolve::tests::renamed_in_use_exe_still_resolves test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6913514Z PASS [ 0.007s] ( 935/1156) spt-runtime resolve::tests::single_candidate_resolves_base_no_pointer test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6920329Z PASS [ 0.010s] ( 936/1156) spt-runtime resolve::tests::pointer_overrides_fallback test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6933895Z PASS [ 0.006s] ( 937/1156) spt-runtime runtime::tests::fills_known_placeholders test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6954848Z PASS [ 0.006s] ( 938/1156) spt-runtime runtime::tests::missing_key_and_empty_command_errors_still_fire test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6956155Z PASS [ 0.005s] ( 939/1156) spt-runtime runtime::tests::missing_key_errors_before_spawn test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6959742Z PASS [ 0.006s] ( 940/1156) spt-runtime runtime::tests::literal_braces_still_escape_per_token test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6967995Z PASS [ 0.011s] ( 941/1156) spt-runtime resolve::tests::stale_pointer_self_heals_to_fallback test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6968882Z PASS [ 0.012s] ( 942/1156) spt-runtime resolve::tests::set_clear_prune_rules test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6972261Z PASS [ 0.005s] ( 943/1156) spt-runtime runtime::tests::placeholder_inside_larger_token_substitutes_in_place test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6973240Z PASS [ 0.006s] ( 944/1156) spt-runtime runtime::tests::multiword_value_is_one_argv_element test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.6987955Z PASS [ 0.005s] ( 945/1156) spt-runtime runtime::tests::quote_and_semicolon_values_stay_one_element test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.7012971Z PASS [ 0.005s] ( 946/1156) spt-runtime runtime::tests::resolve_program_prefers_install_dir test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.7013987Z PASS [ 0.006s] ( 947/1156) spt-runtime runtime::tests::resolve_program_falls_back_to_path test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.7019835Z PASS [ 0.006s] ( 948/1156) spt-runtime runtime::tests::spawn_session_detached_returns_pid test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.7021481Z PASS [ 0.005s] ( 949/1156) spt-runtime runtime::tests::tokenize_honors_double_quotes test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.7025396Z PASS [ 0.006s] ( 950/1156) spt-runtime runtime::tests::unknown_role_errors test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.7043728Z PASS [ 0.007s] ( 951/1156) spt-store access::tests::recent_outbound_correlates_within_window test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.7049667Z PASS [ 0.008s] ( 952/1156) spt-store access::tests::allow_revoke_open_polarity test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.7069612Z PASS [ 0.005s] ( 953/1156) spt-store atomic::tests::atomic_write_bytes_round_trips test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.7073076Z PASS [ 0.006s] ( 954/1156) spt-store access::tests::users_reservation_decodes_inert test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.7073567Z PASS [ 0.006s] ( 955/1156) spt-store access::tests::recent_outbound_persists test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.7074329Z PASS [ 0.005s] ( 956/1156) spt-store atomic::tests::atomic_write_creates_and_replaces test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.7076375Z PASS [ 0.006s] ( 957/1156) spt-store access::tests::store_persists_and_degrades_open test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.7094263Z PASS [ 0.005s] ( 958/1156) spt-store atomic::tests::retry_absorbs_transient_then_succeeds test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.7096365Z PASS [ 0.005s] ( 959/1156) spt-store atomic::tests::retry_does_not_retry_non_transient test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.7106693Z PASS [ 0.012s] ( 960/1156) spt-store access::tests::recent_outbound_is_bounded test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.7119087Z PASS [ 0.005s] ( 961/1156) spt-store atomic::tests::to_forward_slash_strips_unc_prefix test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.7121658Z PASS [ 0.005s] ( 962/1156) spt-store atomic::tests::retry_gives_up_after_max_attempts test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.7123997Z PASS [ 0.005s] ( 963/1156) spt-store attachment::tests::corrupt_file_degrades_to_attached test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.7131268Z PASS [ 0.006s] ( 964/1156) spt-store attachment::tests::attached_default_flip_roundtrip test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.7132138Z PASS [ 0.006s] ( 965/1156) spt-store attachment::tests::boot_reset_and_serving_filter test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.7136044Z PASS [ 0.027s] ( 966/1156) spt-runtime runtime::tests::bounded_run_captures_success test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.7186516Z PASS [ 0.005s] ( 967/1156) spt-store contextmark::tests::join_bump_dominates_both_parents test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.7188878Z PASS [ 0.005s] ( 968/1156) spt-store contextmark::tests::marker_round_trips_v1_and_v2 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.7229473Z PASS [ 0.004s] ( 969/1156) spt-store contextmark::tests::merge_decisions test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.7235130Z PASS [ 0.005s] ( 970/1156) spt-store contextmark::tests::vector_compare_covers_all_orders test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.7267092Z PASS [ 0.004s] ( 971/1156) spt-store contextmark::tests::vector_parse_tolerant test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.7704217Z PASS [ 0.058s] ( 972/1156) spt-store branchstore::tests::open_or_init_idempotent test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.8019218Z PASS [ 0.089s] ( 973/1156) spt-store branchstore::tests::sweep_removes_only_stale_empty_locks test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.8063551Z PASS [ 0.036s] ( 974/1156) spt-store contextstore::tests::invalid_id_refused test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.8615475Z PASS [ 0.152s] ( 975/1156) spt-store branchstore::tests::branches_are_independent_roots test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.8631950Z PASS [ 0.151s] ( 976/1156) spt-store branchstore::tests::multi_key_commit_is_one_commit test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.8732223Z PASS [ 0.162s] ( 977/1156) spt-store branchstore::tests::commit_then_read_at_tip test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.8754584Z PASS [ 0.162s] ( 978/1156) spt-store branchstore::tests::unchanged_write_is_no_commit test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.8775975Z PASS [ 0.004s] ( 979/1156) spt-store epoch::tests::corrupt_or_absent_file_degrades_safely test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.8800644Z PASS [ 0.005s] ( 980/1156) spt-store epoch::tests::counter_persists_across_reload test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.8819817Z PASS [ 0.004s] ( 981/1156) spt-store epoch::tests::next_is_strictly_increasing_from_one test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.8848567Z PASS [ 0.005s] ( 982/1156) spt-store gitrun::tests::deadline_kills_and_reports_timed_out test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.8875347Z PASS [ 3.153s] ( 983/1156) spt-daemon::presence presence_history_replays_from_zero_for_a_late_subscriber test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.8890812Z PASS [ 0.004s] ( 984/1156) spt-store grants::tests::grant_match_is_exact_per_tuple test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.8914426Z PASS [ 0.004s] ( 985/1156) spt-store grants::tests::grant_revoke_roundtrip_default_deny test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.8934655Z PASS [ 0.004s] ( 986/1156) spt-store grants::tests::persistence_and_corrupt_degrade_to_deny test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.8955308Z PASS [ 0.004s] ( 987/1156) spt-store history::tests::appends_one_record_per_line test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.8967397Z PASS [ 0.015s] ( 988/1156) spt-store gitrun::tests::version_runs_within_budget test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.8977675Z PASS [ 0.004s] ( 989/1156) spt-store history::tests::context_entries_carry_the_discriminator test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.9007750Z PASS [ 0.005s] ( 990/1156) spt-store history::tests::digest_entries_go_to_a_separate_log test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.9021267Z PASS [ 0.004s] ( 991/1156) spt-store home::tests::home_assignment_matrix test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.9024028Z PASS [ 0.006s] ( 992/1156) spt-store home::tests::adoption_stamps_only_unset_and_only_when_unambiguous test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.9047578Z PASS [ 0.004s] ( 993/1156) spt-store home::tests::scope_seeding_never_clobbers_user_policy test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.9063411Z PASS [ 0.004s] ( 994/1156) spt-store hostlabel::tests::hostname_is_nonempty_and_trimmed_on_supported_platforms test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.9064428Z PASS [ 0.004s] ( 995/1156) spt-store home::tests::stamp_creation_fields_news_assign_and_revives_carry_forward test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.9091216Z PASS [ 0.004s] ( 996/1156) spt-store info::tests::busy_sentinel_round_trips_and_read_pid_is_none test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.9110155Z PASS [ 0.005s] ( 997/1156) spt-store info::tests::controllable_is_additive_and_round_trips test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.9136579Z PASS [ 0.004s] ( 998/1156) spt-store info::tests::corrupt_content_returns_none test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.9192695Z PASS [ 0.005s] ( 999/1156) spt-store info::tests::psyche_host_error_round_trips_and_set_clear_increments test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.9237293Z PASS [ 3.142s] (1000/1156) spt-daemon::presence presence_survives_brain_restart_with_cursor_resume test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.9243635Z PASS [ 0.005s] (1001/1156) spt-store info::tests::read_pid_tolerates_schema_minimal test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.9290695Z PASS [ 0.005s] (1002/1156) spt-store info::tests::set_driven_by_stamps_and_clears test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.9300291Z PASS [ 0.006s] (1003/1156) spt-store info::tests::set_last_active_stamps_recency test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.9351392Z PASS [ 0.006s] (1004/1156) spt-store info::tests::set_resources_writes_and_clears_the_blurb test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.9356836Z PASS [ 0.006s] (1005/1156) spt-store info::tests::set_rest_state_stamps_state_and_anchor_as_a_pair test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.9399278Z PASS [ 0.005s] (1006/1156) spt-store info::tests::set_status_marks_existing_record test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.9403674Z PASS [ 0.005s] (1007/1156) spt-store info::tests::write_read_round_trip test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.9455763Z PASS [ 0.006s] (1008/1156) spt-store liveness::tests::busy_and_missing_keep_interim_parity test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.9456712Z PASS [ 0.005s] (1009/1156) spt-store liveness::tests::daemon_hosted_offline_overrides_live_pid test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.9464855Z PASS [ 0.040s] (1010/1156) spt-store info::tests::concurrent_read_during_writes_never_torn test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.9507218Z PASS [ 0.005s] (1011/1156) spt-store liveness::tests::daemon_hosted_online_survives_dead_pid test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.9508731Z PASS [ 0.005s] (1012/1156) spt-store liveness::tests::external_perch_still_pid_probes test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.9516053Z PASS [ 0.005s] (1013/1156) spt-store liveness::tests::registry_entry_keys_on_status_for_hosted_rows test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.9543818Z PASS [ 0.152s] (1014/1156) spt-store contextstore::tests::project_branch_holds_many_agents test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.9555800Z PASS [ 0.005s] (1015/1156) spt-store nodeid::tests::corrupt_key_errors_never_regenerates test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.9557685Z PASS [ 0.005s] (1016/1156) spt-store nodeid::tests::create_then_load_is_stable test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.9569101Z PASS [ 0.005s] (1017/1156) spt-store nodeid::tests::seed_hex_round_trips test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:51.9947718Z PASS [ 0.308s] (1018/1156) spt-runtime runtime::tests::bounded_run_kills_on_timeout test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:52.0003311Z PASS [ 0.005s] (1019/1156) spt-store notif::tests::row_serde_round_trips_with_forward_compat test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:52.0107539Z PASS [ 0.287s] (1020/1156) spt-store contextstore::tests::conflict_artifacts_preserve_both_versions test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:52.0207220Z PASS [ 0.110s] (1021/1156) spt-store info::tests::mutate_info_serializes_writers_so_offline_is_never_clobbered test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:52.0251217Z PASS [ 0.004s] (1022/1156) spt-store peeraddrs::tests::corrupt_file_degrades_to_empty test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:52.0296698Z PASS [ 0.004s] (1023/1156) spt-store peeraddrs::tests::put_get_roundtrip_and_noop_reput test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:52.0342538Z PASS [ 0.004s] (1024/1156) spt-store peeraddrs::tests::record_is_one_step_and_skips_noops test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:52.0384265Z PASS [ 0.004s] (1025/1156) spt-store perch::tests::child_files_route_through_one_resolver test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:52.0422309Z PASS [ 0.088s] (1026/1156) spt-store notif::tests::listing_is_subnet_scoped test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:52.0425673Z PASS [ 0.004s] (1027/1156) spt-store perch::tests::classification_matrix test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:52.0465388Z PASS [ 0.004s] (1028/1156) spt-store perch::tests::explicit_parent_wins_over_infer test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:52.0469629Z PASS [ 0.004s] (1029/1156) spt-store perch::tests::list_self_perch_ids_enumerates_bound_top_level test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:52.0495638Z PASS [ 0.094s] (1030/1156) spt-store notif::tests::produce_list_dismiss_round_trip test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:52.0511549Z PASS [ 0.005s] (1031/1156) spt-store perch::tests::resolve_psyche_and_worker_nest_under_parent test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:52.0512532Z PASS [ 0.004s] (1032/1156) spt-store perch::tests::resolve_self_is_flat test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:52.0543077Z PASS [ 0.005s] (1033/1156) spt-store perch::tests::shell_perches_resolve_under_owner_shells_namespace test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:52.0553213Z PASS [ 0.004s] (1034/1156) spt-store perch::tests::spt_home_is_pure_and_honors_env test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:52.0556137Z PASS [ 0.004s] (1035/1156) spt-store proc::tests::current_process_is_alive test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:52.0585490Z PASS [ 0.004s] (1036/1156) spt-store proc::tests::exe_basename_dead_pid_is_none test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:52.0593959Z PASS [ 0.004s] (1037/1156) spt-store proc::tests::exe_basename_resolves_current_process test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:52.0602738Z PASS [ 0.005s] (1038/1156) spt-store proc::tests::parent_pid_resolves_and_is_alive test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:52.0626069Z PASS [ 0.004s] (1039/1156) spt-store proc::tests::pid_zero_is_dead_on_every_os test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:52.0642431Z PASS [ 0.004s] (1040/1156) spt-store proc::tests::unassigned_pid_is_dead test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:52.0872744Z PASS [ 0.025s] (1041/1156) spt-store proc::tests::zombie_child_reads_dead test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:52.0891399Z PASS [ 0.078s] (1042/1156) spt-store notif::tests::stale_undismissed_copy_cannot_undismiss test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:52.0913925Z PASS [ 0.004s] (1043/1156) spt-store project::tests::url_spellings_normalize_to_one_id test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:52.0927559Z PASS [ 0.136s] (1044/1156) spt-store notif::tests::reopen_is_durable_and_corrupt_seen_degrades test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:52.1003050Z PASS [ 0.100s] (1045/1156) spt-store notif::tests::seen_unions_and_surfaced_maxes test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:52.1089064Z PASS [ 0.246s] (1046/1156) spt-store contextstore::tests::two_tier_layout_and_commits test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:52.1241362Z PASS [ 0.168s] (1047/1156) spt-store notif::tests::merge_is_idempotent_and_commutative test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:52.1421237Z PASS [ 0.078s] (1048/1156) spt-store project::tests::derivation_ladder test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:52.1733343Z PASS [ 0.073s] (1049/1156) spt-store registry::tests::register_and_lookup test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:52.1798249Z PASS [ 0.071s] (1050/1156) spt-store registry::tests::register_on_nonexistent_owlery_creates_dir_and_succeeds test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:52.1841758Z PASS [ 0.004s] (1051/1156) spt-store rename::tests::live_nested_child_blocks_rename test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:52.1889924Z PASS [ 0.005s] (1052/1156) spt-store rename::tests::rename_refusals_leave_owlery_untouched test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:52.1943632Z PASS [ 0.005s] (1053/1156) spt-store rename::tests::rename_ripples_self_and_nested_children test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:52.1989158Z PASS [ 0.004s] (1054/1156) spt-store roster::tests::is_member_any_spans_subnets_and_honors_tombstones test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:52.2028766Z PASS [ 0.004s] (1055/1156) spt-store roster::tests::merge_entry_is_strictly_greater_lease_wins test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:52.2069265Z PASS [ 0.004s] (1056/1156) spt-store roster::tests::merge_is_commutative_and_idempotent test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:52.2110112Z PASS [ 0.004s] (1057/1156) spt-store roster::tests::offline_member_persists_through_silence_and_reload test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:52.2149466Z PASS [ 0.004s] (1058/1156) spt-store roster::tests::roster_for_projects_one_subnets_slice test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:52.2195878Z PASS [ 0.005s] (1059/1156) spt-store roster::tests::serde_additive_and_degrades_to_empty test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:52.2220736Z PASS [ 0.133s] (1060/1156) spt-store registry::tests::clean_keys_on_status_for_daemon_hosted_rows test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:52.2233486Z PASS [ 0.004s] (1061/1156) spt-store roster::tests::tombstone_dominates_suppresses_reinsert_and_clears test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:52.2252487Z PASS [ 0.101s] (1062/1156) spt-store registry::tests::reregister_replaces_address test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:52.2255063Z PASS [ 0.134s] (1063/1156) spt-store registry::tests::clean_removes_dead_keeps_live test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:52.2263282Z PASS [ 0.004s] (1064/1156) spt-store roster::tests::tombstones_are_scoped_and_merge test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:52.2273808Z PASS [ 0.004s] (1065/1156) spt-store roster::tests::upsert_self_overwrites_unconditionally test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:52.2292225Z PASS [ 0.004s] (1066/1156) spt-store rotation::tests::coalesce_is_per_subnet test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:52.2293544Z PASS [ 0.004s] (1067/1156) spt-store rotation::tests::coalesce_unions_revokees_and_keeps_earliest_deadline test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:52.2303234Z PASS [ 0.004s] (1068/1156) spt-store rotation::tests::due_subnets_respects_deadline_and_force_is_immediate test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:52.2325025Z PASS [ 0.005s] (1069/1156) spt-store rotation::tests::persists_and_degrades_to_empty test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:52.2331550Z PASS [ 0.004s] (1070/1156) spt-store seed::tests::absent_cwd_is_omitted test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:52.2332413Z PASS [ 0.004s] (1071/1156) spt-store seed::tests::seed_round_trips_through_json test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:52.2345923Z PASS [ 0.004s] (1072/1156) spt-store sessions::tests::appends_and_reads_in_order test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:52.2364070Z PASS [ 0.063s] (1073/1156) spt-store registry::tests::resolve_on_empty_registry_is_none_not_error test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:52.2370791Z PASS [ 0.004s] (1074/1156) spt-store sessions::tests::none_cwd_emits_no_field_and_roundtrips test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:52.2373678Z PASS [ 0.004s] (1075/1156) spt-store sessions::tests::pre_migration_row_without_cwd_deserializes_as_none test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:52.2396821Z PASS [ 0.005s] (1076/1156) spt-store sessions::tests::row_with_cwd_appends_and_reads_back test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:52.2410814Z PASS [ 0.005s] (1077/1156) spt-store sessions::tests::same_session_rebind_is_deduped test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:52.2419679Z PASS [ 0.005s] (1078/1156) spt-store sessions::tests::tolerant_of_garbage_lines test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:52.2426993Z PASS [ 0.516s] (1079/1156) spt-store contextstore::tests::fork_copies_both_tiers_then_diverges test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:52.2437876Z PASS [ 0.006s] (1080/1156) spt-store shellinfo::tests::alias_unique_rename_and_resolution test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:52.2463070Z PASS [ 0.006s] (1081/1156) spt-store shellinfo::tests::composite_option_mints_colon_free_id_and_carries_the_composite test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:52.2476149Z PASS [ 0.006s] (1082/1156) spt-store shellinfo::tests::mint_smallest_free_and_teardown_frees test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:52.2497355Z PASS [ 0.008s] (1083/1156) spt-store shellinfo::tests::shellinfo_roundtrip_and_corrupt_tolerance test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:52.2847625Z LEAK [ 0.225s] (1084/1156) spt-store proc::tests::process_cmdline_reads_a_live_arg_marker test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:52.6016433Z PASS [ 5.007s] (1085/1156) spt-daemon broker::tests::controller_deliver_is_bounded_never_a_permanent_park test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:52.6152761Z PASS [ 0.754s] (1086/1156) spt-store contextstore::tests::rename_ripples_both_tiers test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:53.1426820Z PASS [ 1.336s] (1087/1156) spt-store contextstore::tests::remove_endpoint_removes_exactly_the_source test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:53.1470065Z PASS [ 0.004s] (1088/1156) spt-store subnet::tests::add_joined_preserves_seed_and_epoch test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:53.1507524Z PASS [ 0.004s] (1089/1156) spt-store subnet::tests::adopt_rotation_takes_newer_seed_and_is_idempotent test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:53.1544965Z PASS [ 0.004s] (1090/1156) spt-store subnet::tests::create_subnet_starts_at_epoch_one_unique_name test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:53.1581339Z PASS [ 0.004s] (1091/1156) spt-store subnet::tests::hex_round_trips_and_rejects_bad_input test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:53.1625655Z PASS [ 0.004s] (1092/1156) spt-store subnet::tests::hide_new_endpoints_defaults_off_and_persists test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:53.1664817Z PASS [ 0.004s] (1093/1156) spt-store subnet::tests::minted_seeds_are_random test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:53.1703739Z PASS [ 0.004s] (1094/1156) spt-store subnet::tests::missing_or_corrupt_file_is_empty_store test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:53.1741163Z PASS [ 0.004s] (1095/1156) spt-store subnet::tests::no_prior_generation_before_rotation test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:53.1779282Z PASS [ 0.004s] (1096/1156) spt-store subnet::tests::remove_drops_membership test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:53.1819709Z PASS [ 0.004s] (1097/1156) spt-store subnet::tests::rotate_bumps_epoch_and_changes_seed test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:53.1866839Z PASS [ 0.005s] (1098/1156) spt-store subnet::tests::store_persists_multi_subnet_and_rotation test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:53.7669878Z PASS [ 1.534s] (1099/1156) spt-store sessions::tests::last_k_and_bounding test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:53.7915713Z PASS [ 2.082s] (1100/1156) spt-store branchstore::tests::branches_by_recency_orders_newest_first test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:53.8102412Z PASS [ 1.668s] (1101/1156) spt-store registry::tests::resolve_cleans_before_lookup test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:55.0887126Z PASS [ 6.026s] (1102/1156) spt-daemon::pump pump_survives_a_black_holing_peer_heartbeat_advances_no_restart test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:55.2761811Z PASS [ 0.187s] (1103/1156) spt-store syncmerge::tests::non_context_branch_refused test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:55.4188373Z PASS [ 3.134s] (1104/1156) spt-store spool::tests::spool_touches_has_messages_sentinel test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:55.4770667Z PASS [ 2.875s] (1105/1156) spt-store spool::tests::wan_mark_seen_claims_once_and_blocks_spool_path test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:55.4809912Z PASS [ 0.004s] (1106/1156) spt-store timefmt::tests::formats_known_instants test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:55.4847668Z PASS [ 0.004s] (1107/1156) spt-store timefmt::tests::lexical_order_matches_chronological_order test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:55.4889026Z PASS [ 0.004s] (1108/1156) spt-store visibility::tests::hidden_gates_sync_even_when_listed test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:55.4927680Z PASS [ 0.004s] (1109/1156) spt-store visibility::tests::hidden_is_or_of_defaults test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:55.4964789Z PASS [ 0.004s] (1110/1156) spt-store visibility::tests::override_wins_both_directions test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:55.5007688Z PASS [ 0.004s] (1111/1156) spt-store visibility::tests::store_persists_and_degrades_safe test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:55.5049017Z PASS [ 0.004s] (1112/1156) spt-store visibility::tests::synced_requires_membership_listing test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:55.5167847Z PASS [ 0.012s] (1113/1156) spt-store xfer::tests::progress_round_trips_per_role_and_updates_mid_flight test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:55.5263647Z PASS [ 0.009s] (1114/1156) spt-store xfer::tests::xfer_id_is_filename_safe_and_distinct test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:55.5302974Z PASS [ 0.004s] (1115/1156) spt-term digest::tests::config_defaults_are_the_presentation_formula test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:55.5396240Z PASS [ 0.009s] (1116/1156) spt-term digest::tests::truncate_arg_cuts_to_width_with_ellipsis test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:55.5459457Z PASS [ 0.006s] (1117/1156) spt-term projection::tests::agent_between_tools_breaks_the_sprint test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:55.5500369Z PASS [ 0.004s] (1118/1156) spt-term projection::tests::context_record_discriminator test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:55.5538462Z PASS [ 0.004s] (1119/1156) spt-term projection::tests::diagnostics_clean_stream_has_no_drops test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:55.5577950Z PASS [ 0.004s] (1120/1156) spt-term projection::tests::diagnostics_record_every_drop_with_reason test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:55.5613945Z PASS [ 0.004s] (1121/1156) spt-term projection::tests::empty_input_projects_empty_digest test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:55.5650030Z PASS [ 0.004s] (1122/1156) spt-term projection::tests::leading_output_without_input_is_a_preamble_turn test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:55.5687380Z PASS [ 0.004s] (1123/1156) spt-term projection::tests::malformed_unknown_role_and_toolless_tool_are_skipped test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:55.5723220Z PASS [ 0.004s] (1124/1156) spt-term projection::tests::projects_input_agent_and_collapses_tool_sprints test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:55.5765093Z PASS [ 0.004s] (1125/1156) spt-term projection::tests::sprint_collapse_off_keeps_tools_separate test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:55.5801657Z PASS [ 0.004s] (1126/1156) spt-term projection::tests::timeline_boundary_divider_and_window_bridge test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:55.5836599Z PASS [ 0.003s] (1127/1156) spt-term projection::tests::timeline_folds_context_into_a_turn test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:55.5871973Z PASS [ 0.003s] (1128/1156) spt-term projection::tests::truncates_tool_args_to_width test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:55.6014333Z PASS [ 0.004s] (1129/1156) spt-term projection::tests::ts_ordering_key_parses_and_is_optional test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:55.6015011Z PASS [ 0.004s] (1130/1156) spt-term projection::tests::unknown_fields_are_tolerated test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:55.6015597Z PASS [ 0.004s] (1131/1156) spt-term projection::tests::window_input_turns_bridges_and_trims test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:55.6032529Z PASS [ 0.004s] (1132/1156) spt-term projection::tests::windows_to_last_n_turns test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:55.6071766Z PASS [ 0.004s] (1133/1156) spt-term reader::tests::auto_answers_synthetic_dsr_query test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:55.6108033Z PASS [ 0.004s] (1134/1156) spt-term reader::tests::dsr_matcher_finds_query_across_chunk_boundary test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:55.6196201Z PASS [ 0.009s] (1135/1156) spt-term reader::tests::no_dsr_means_no_answer test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:55.6235346Z PASS [ 0.004s] (1136/1156) spt-term winprog::tests::bare_name_prefers_cmd_over_extensionless_shim test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:55.6272241Z PASS [ 0.004s] (1137/1156) spt-term winprog::tests::bare_name_prefers_exe_and_spawns_direct test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:55.6309414Z PASS [ 0.004s] (1138/1156) spt-term winprog::tests::earlier_path_dir_wins test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:55.6347647Z PASS [ 0.004s] (1139/1156) spt-term winprog::tests::explicit_extension_is_classified_in_place test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:55.6385101Z PASS [ 0.004s] (1140/1156) spt-term winprog::tests::unresolvable_passes_through test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:55.6422417Z PASS [ 0.004s] (1141/1156) xtask::bin/xtask converge_tests::converge_table_renders_rows_and_success_predicate test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:55.6436343Z PASS [ 1.833s] (1142/1156) spt-store syncmerge::tests::legacy_bottom_vectors_surface_not_overwrite test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:55.6782471Z PASS [ 3.428s] (1143/1156) spt-store spool::tests::reopen_is_idempotent test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:55.9959758Z PASS [ 2.809s] (1144/1156) spt-store syncmerge::tests::adopt_then_incremental_then_idempotent_repull test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:56.6077023Z PASS [ 3.992s] (1145/1156) spt-store spool::tests::wan_spool_dedups_on_op_id_across_reopen test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:57.3238503Z PASS [ 10.127s] (1146/1156) spt::bin/spt cli::tests::shell_spawn_gates_on_the_registered_set test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:57.3439318Z FAIL [ 5.238s] (1147/1156) spt-store registry::tests::concurrent_registration_never_locks test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:57.3440138Z stdout ─── test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:57.3440272Z test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:57.3440409Z running 1 test test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:57.3440752Z test registry::tests::concurrent_registration_never_locks ... FAILED test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:57.3441055Z test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:57.3441155Z failures: test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:57.3441298Z test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:57.3441398Z failures: test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:57.3441665Z registry::tests::concurrent_registration_never_locks test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:57.3441913Z test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:57.3442195Z test result: FAILED. 0 passed; 1 failed; 0 ignored; 0 measured; 170 filtered out; finished in 5.23s test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:57.3442576Z test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:57.3442728Z stderr ─── test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:57.3442858Z test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:57.3443271Z thread 'registry::tests::concurrent_registration_never_locks' (3381081) panicked at crates/spt-store/src/registry.rs:184:18: test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:57.3444065Z registration must not lock: SqliteFailure(Error { code: DatabaseBusy, extended_code: 5 }, Some("database is locked")) test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:57.3444709Z note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:57.3464890Z test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:57.6258007Z PASS [ 5.382s] (1148/1156) spt-store spool::tests::drain_marks_delivered_and_is_idempotent test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:58.0946898Z PASS [ 5.852s] (1149/1156) spt-store spool::tests::deferred_row_survives_event_drain_then_hook_delivers test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:58.0976155Z PASS [ 5.850s] (1150/1156) spt-store spool::tests::non_deferred_drain_skips_deferred_and_preserves_order test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:58.1665112Z PASS [ 4.375s] (1151/1156) spt-store syncmerge::tests::dominated_incoming_drops_but_joins_dag test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:58.1919895Z PASS [ 2.916s] (1152/1156) spt-store syncmerge::tests::project_branch_unions_disjoint_agents test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:58.2112543Z PASS [ 5.965s] (1153/1156) spt-store spool::tests::event_part_body_persists_byte_exact test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:58.2450540Z PASS [ 4.478s] (1154/1156) spt-store syncmerge::tests::concurrent_writes_surface_on_both_nodes test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:24:58.7033796Z PASS [ 3.285s] (1155/1156) spt-store syncmerge::tests::reconciled_write_propagates_and_clears_artifacts test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:25:02.2491460Z PASS [ 15.112s] (1156/1156) spt::bin/spt cli::tests::owner_shutdown_gated_by_can_shutdown_grant test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:25:02.2492508Z ──────────── test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:25:02.2492966Z Summary [ 16.282s] 1156 tests run: 1155 passed (2 leaky), 1 failed, 1 skipped test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:25:02.2493464Z FAIL [ 5.238s] (1147/1156) spt-store registry::tests::concurrent_registration_never_locks test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:25:02.2537642Z error: test run failed test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T07:25:02.2604750Z ##[error]Process completed with exit code 100. test (self-hosted, Linux, kitsubito) Post Run actions/checkout@v5 2026-06-21T07:25:02.2824602Z Post job cleanup. test (self-hosted, Linux, kitsubito) Post Run actions/checkout@v5 2026-06-21T07:25:02.4494770Z [command]/usr/bin/git version test (self-hosted, Linux, kitsubito) Post Run actions/checkout@v5 2026-06-21T07:25:02.4561489Z git version 2.43.0 test (self-hosted, Linux, kitsubito) Post Run actions/checkout@v5 2026-06-21T07:25:02.4592584Z Temporarily overriding HOME='/home/reavus/actions-runner/_work/_temp/b6324377-ea33-40ed-8ca0-2ef3093fbd0b' before making global git config changes test (self-hosted, Linux, kitsubito) Post Run actions/checkout@v5 2026-06-21T07:25:02.4593318Z Adding repository directory to the temporary git global config as a safe directory test (self-hosted, Linux, kitsubito) Post Run actions/checkout@v5 2026-06-21T07:25:02.4595861Z [command]/usr/bin/git config --global --add safe.directory /home/reavus/actions-runner/_work/spt-core/spt-core test (self-hosted, Linux, kitsubito) Post Run actions/checkout@v5 2026-06-21T07:25:02.4624454Z [command]/usr/bin/git config --local --name-only --get-regexp core\.sshCommand test (self-hosted, Linux, kitsubito) Post Run actions/checkout@v5 2026-06-21T07:25:02.4651133Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'core\.sshCommand' && git config --local --unset-all 'core.sshCommand' || :" test (self-hosted, Linux, kitsubito) Post Run actions/checkout@v5 2026-06-21T07:25:02.4880340Z [command]/usr/bin/git config --local --name-only --get-regexp http\.https\:\/\/github\.com\/\.extraheader test (self-hosted, Linux, kitsubito) Post Run actions/checkout@v5 2026-06-21T07:25:02.4900931Z http.https://github.com/.extraheader test (self-hosted, Linux, kitsubito) Post Run actions/checkout@v5 2026-06-21T07:25:02.4908135Z [command]/usr/bin/git config --local --unset-all http.https://github.com/.extraheader test (self-hosted, Linux, kitsubito) Post Run actions/checkout@v5 2026-06-21T07:25:02.4933870Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'http\.https\:\/\/github\.com\/\.extraheader' && git config --local --unset-all 'http.https://github.com/.extraheader' || :" test (self-hosted, Linux, kitsubito) Post Run actions/checkout@v5 2026-06-21T07:25:02.5114031Z [command]/usr/bin/git config --local --name-only --get-regexp ^includeIf\.gitdir: test (self-hosted, Linux, kitsubito) Post Run actions/checkout@v5 2026-06-21T07:25:02.5138152Z [command]/usr/bin/git submodule foreach --recursive git config --local --show-origin --name-only --get-regexp remote.origin.url test (self-hosted, Linux, kitsubito) Complete job 2026-06-21T07:25:02.5450584Z Cleaning up orphan processes test (self-hosted, Linux, kitsubito) Complete job 2026-06-21T07:25:02.6111229Z Terminate orphan process: pid (3374880) (spt) test (self-hosted, Linux, kitsubito) Complete job 2026-06-21T07:25:02.6129995Z Terminate orphan process: pid (3374925) (spt) test (self-hosted, Linux, kitsubito) Complete job 2026-06-21T07:25:02.6147991Z Terminate orphan process: pid (3376426) (sleep) test (self-hosted, Linux, kitsubito) Complete job 2026-06-21T07:25:02.6165825Z Terminate orphan process: pid (3376954) (sleep) test (self-hosted, Linux, kitsubito) Complete job 2026-06-21T07:25:02.6193882Z Terminate orphan process: pid (3376956) (sleep) test (self-hosted, Linux, kitsubito) Complete job 2026-06-21T07:25:02.6211123Z Terminate orphan process: pid (3378262) (sleep) test (self-hosted, Linux, kitsubito) Complete job 2026-06-21T07:25:02.6228134Z Terminate orphan process: pid (3378344) (sleep) test (self-hosted, Linux, kitsubito) Complete job 2026-06-21T07:25:02.6245007Z Terminate orphan process: pid (3380050) (sleep) test (self-hosted, Linux, kitsubito) Complete job 2026-06-21T07:25:02.6261686Z Terminate orphan process: pid (3381015) (sleep)