n1-gate (self-hosted, Linux, kitsubito) Set up job 2026-06-21T09:42:08.2420874Z Current runner version: '2.335.1' n1-gate (self-hosted, Linux, kitsubito) Set up job 2026-06-21T09:42:08.2425821Z Runner name: 'kitsubito' n1-gate (self-hosted, Linux, kitsubito) Set up job 2026-06-21T09:42:08.2426341Z Runner group name: 'Default' n1-gate (self-hosted, Linux, kitsubito) Set up job 2026-06-21T09:42:08.2426994Z Machine name: 'KITSUBITO' n1-gate (self-hosted, Linux, kitsubito) Set up job 2026-06-21T09:42:08.2428939Z ##[group]GITHUB_TOKEN Permissions n1-gate (self-hosted, Linux, kitsubito) Set up job 2026-06-21T09:42:08.2430757Z Contents: read n1-gate (self-hosted, Linux, kitsubito) Set up job 2026-06-21T09:42:08.2431167Z Metadata: read n1-gate (self-hosted, Linux, kitsubito) Set up job 2026-06-21T09:42:08.2431539Z Packages: read n1-gate (self-hosted, Linux, kitsubito) Set up job 2026-06-21T09:42:08.2431907Z ##[endgroup] n1-gate (self-hosted, Linux, kitsubito) Set up job 2026-06-21T09:42:08.2433441Z Secret source: Actions n1-gate (self-hosted, Linux, kitsubito) Set up job 2026-06-21T09:42:08.2433958Z Prepare workflow directory n1-gate (self-hosted, Linux, kitsubito) Set up job 2026-06-21T09:42:08.2788809Z Prepare all required actions n1-gate (self-hosted, Linux, kitsubito) Set up job 2026-06-21T09:42:08.2819407Z Getting action download info n1-gate (self-hosted, Linux, kitsubito) Set up job 2026-06-21T09:42:08.5924357Z Download action repository 'actions/checkout@v5' (SHA:93cb6efe18208431cddfb8368fd83d5badbf9bfd) n1-gate (self-hosted, Linux, kitsubito) Set up job 2026-06-21T09:42:09.2578090Z Complete job name: n1-gate (self-hosted, Linux, kitsubito) n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:42:09.3484099Z ##[group]Run actions/checkout@v5 n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:42:09.3484948Z with: n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:42:09.3485333Z fetch-depth: 0 n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:42:09.3485815Z repository: SaberMage/spt-core n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:42:09.3489651Z token: *** n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:42:09.3490053Z ssh-strict: true n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:42:09.3490438Z ssh-user: git n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:42:09.3490829Z persist-credentials: true n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:42:09.3491254Z clean: true n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:42:09.3491654Z sparse-checkout-cone-mode: true n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:42:09.3492112Z fetch-tags: false n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:42:09.3492492Z show-progress: true n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:42:09.3492891Z lfs: false n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:42:09.3493253Z submodules: false n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:42:09.3493677Z set-safe-directory: true n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:42:09.3494349Z ##[endgroup] n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:42:09.4292160Z Syncing repository: SaberMage/spt-core n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:42:09.4294073Z ##[group]Getting Git version info n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:42:09.4294856Z Working directory is '/home/reavus/actions-runner/_work/spt-core/spt-core' n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:42:09.4295909Z [command]/usr/bin/git version n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:42:09.4316539Z git version 2.43.0 n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:42:09.4334780Z ##[endgroup] n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:42:09.4347450Z Temporarily overriding HOME='/home/reavus/actions-runner/_work/_temp/91514c25-da15-4b7c-ad43-402d63a09d63' before making global git config changes n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:42:09.4350794Z 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-21T09:42:09.4351942Z [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-21T09:42:09.4386252Z [command]/usr/bin/git config --local --get remote.origin.url n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:42:09.4406389Z https://github.com/SaberMage/spt-core n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:42:09.4416190Z ##[group]Removing previously created refs, to avoid conflicts n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:42:09.4419536Z [command]/usr/bin/git rev-parse --symbolic-full-name --verify --quiet HEAD n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:42:09.4436835Z HEAD n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:42:09.4468591Z ##[endgroup] n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:42:09.4469498Z [command]/usr/bin/git submodule status n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:42:09.4653748Z ##[group]Cleaning the repository n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:42:09.4656184Z [command]/usr/bin/git clean -ffdx n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:42:09.4685118Z Removing traceable-reqs n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:42:09.4692668Z [command]/usr/bin/git reset --hard HEAD n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:42:09.4742425Z HEAD is now at 1cafc8afb Merge 6a27b0b9a2658ec5039ce38b939c6bfdad2757fa into 86f20ac831033a20bd5e096b1c318a75249179f3 n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:42:09.4747292Z ##[endgroup] n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:42:09.4748674Z ##[group]Disabling automatic garbage collection n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:42:09.4752017Z [command]/usr/bin/git config --local gc.auto 0 n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:42:09.4775491Z ##[endgroup] n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:42:09.4776295Z ##[group]Setting up auth n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:42:09.4780431Z [command]/usr/bin/git config --local --name-only --get-regexp core\.sshCommand n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:42:09.4803737Z [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-21T09:42:09.4989319Z [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-21T09:42:09.5014591Z [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-21T09:42:09.5196049Z [command]/usr/bin/git config --local --name-only --get-regexp ^includeIf\.gitdir: n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:42:09.5221761Z [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-21T09:42:09.5407881Z [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-21T09:42:09.5436654Z ##[endgroup] n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:42:09.5437480Z ##[group]Fetching the repository n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:42:09.5443694Z [command]/usr/bin/git -c protocol.version=2 fetch --prune --no-recurse-submodules --unshallow origin +refs/heads/*:refs/remotes/origin/* +refs/tags/*:refs/tags/* +1cafc8afb1ed6606350cab07e057989c02fea0c7:refs/remotes/pull/27/merge n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:42:10.1696999Z From https://github.com/SaberMage/spt-core n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:42:10.1698851Z eb73da70b..6a27b0b9a wedge-trace-v4 -> origin/wedge-trace-v4 n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:42:10.1727330Z ##[endgroup] n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:42:10.1728466Z ##[group]Determining the checkout info n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:42:10.1729754Z ##[endgroup] n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:42:10.1732527Z [command]/usr/bin/git sparse-checkout disable n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:42:10.1768421Z [command]/usr/bin/git config --local --unset-all extensions.worktreeConfig n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:42:10.1791363Z ##[group]Checking out the ref n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:42:10.1794621Z [command]/usr/bin/git checkout --progress --force refs/remotes/pull/27/merge n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:42:10.1843649Z HEAD is now at 1cafc8afb Merge 6a27b0b9a2658ec5039ce38b939c6bfdad2757fa into 86f20ac831033a20bd5e096b1c318a75249179f3 n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:42:10.1847737Z ##[endgroup] n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:42:10.1882262Z [command]/usr/bin/git log -1 --format=%H n1-gate (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:42:10.1906976Z 1cafc8afb1ed6606350cab07e057989c02fea0c7 n1-gate (self-hosted, Linux, kitsubito) Use mold linker (Linux) 2026-06-21T09:42:10.2108807Z ##[group]Run echo 'RUSTFLAGS=-C link-arg=-fuse-ld=mold' >> "$GITHUB_ENV" n1-gate (self-hosted, Linux, kitsubito) Use mold linker (Linux) 2026-06-21T09:42:10.2110644Z echo 'RUSTFLAGS=-C link-arg=-fuse-ld=mold' >> "$GITHUB_ENV" n1-gate (self-hosted, Linux, kitsubito) Use mold linker (Linux) 2026-06-21T09:42:10.2128259Z shell: /usr/bin/bash -e {0} n1-gate (self-hosted, Linux, kitsubito) Use mold linker (Linux) 2026-06-21T09:42:10.2129246Z ##[endgroup] n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:10.2271855Z ##[group]Run set -euo pipefail n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:10.2272851Z set -euo pipefail n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:10.2273676Z PIN=0c95435 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:10.2274463Z CACHE="$HOME/spt-n1-oldbroker" n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:10.2275450Z BIN="$CACHE/target/debug/spt" n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:10.2276759Z # 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-21T09:42:10.2278440Z # 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-21T09:42:10.2280227Z 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-21T09:42:10.2281598Z  rm -rf "$CACHE" n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:10.2282509Z  git clone "$GITHUB_WORKSPACE" "$CACHE" n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:10.2283576Z  git -C "$CACHE" checkout "$PIN" n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:10.2284933Z  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-21T09:42:10.2286288Z  echo "$PIN" > "$CACHE/.builtpin" n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:10.2287262Z fi n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:10.2288343Z 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-21T09:42:10.2304426Z 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-21T09:42:10.2305529Z env: n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:10.2306225Z RUSTFLAGS: -C link-arg=-fuse-ld=mold n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:10.2307112Z ##[endgroup] n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:10.5252168Z Compiling proc-macro2 v1.0.106 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:10.5253760Z Compiling unicode-ident v1.0.24 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:10.5254926Z Compiling quote v1.0.45 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:10.5255937Z Compiling libc v0.2.186 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:10.5256982Z Compiling serde_core v1.0.228 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:10.5258583Z Compiling cfg-if v1.0.4 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:10.5259965Z Compiling serde v1.0.228 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:10.5289115Z Compiling log v0.4.32 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:10.5360454Z Compiling pin-project-lite v0.2.17 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:10.5362697Z Compiling portable-atomic v1.13.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:10.5366961Z Compiling typenum v1.20.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:10.5387738Z Compiling memchr v2.8.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:10.5607135Z Compiling version_check v0.9.5 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:10.5610147Z Compiling shlex v2.0.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:10.5611766Z Compiling find-msvc-tools v0.1.9 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:10.5857550Z Compiling critical-section v1.2.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:10.6277309Z Compiling futures-core v0.3.32 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:10.6351607Z Compiling subtle v2.6.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:10.6742327Z Compiling bytes v1.11.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:10.7546177Z Compiling smallvec v1.15.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:10.7638508Z Compiling equivalent v1.0.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:10.7917479Z Compiling itoa v1.0.18 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:10.8105693Z Compiling semver v1.0.28 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:10.8271845Z Compiling stable_deref_trait v1.2.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:10.8489746Z Compiling slab v0.4.12 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:10.8633301Z Compiling futures-sink v0.3.32 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:10.8782096Z Compiling futures-io v0.3.32 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:10.8932642Z Compiling generic-array v0.14.7 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:10.9032639Z Compiling futures-task v0.3.32 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:10.9687167Z Compiling futures-channel v0.3.32 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:11.0306740Z Compiling rustversion v1.0.22 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:11.0412400Z Compiling bitflags v2.12.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:11.0492540Z Compiling hashbrown v0.17.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:11.0500623Z Compiling cpufeatures v0.2.17 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:11.0691741Z Compiling fnv v1.0.7 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:11.0881809Z Compiling strsim v0.11.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:11.1161807Z Compiling cfg_aliases v0.2.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:11.1351202Z Compiling rand_core v0.10.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:11.1391287Z Compiling writeable v0.6.3 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:11.1760763Z Compiling rustc_version v0.4.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:11.2890952Z Compiling litemap v0.8.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:11.2982864Z Compiling icu_normalizer_data v2.2.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:11.3040952Z Compiling getrandom v0.4.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:11.3750920Z Compiling utf8_iter v1.0.4 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:11.3847213Z Compiling icu_properties_data v2.2.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:11.4675088Z Compiling dunce v1.0.5 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:11.4781061Z Compiling ident_case v1.0.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:11.5191102Z Compiling fs_extra v1.3.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:11.5931115Z Compiling percent-encoding v2.3.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:11.6251857Z Compiling autocfg v1.5.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:11.6420552Z Compiling http v1.4.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:11.7080883Z Compiling unicode-segmentation v1.13.3 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:11.7360508Z Compiling aws-lc-rs v1.17.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:11.7870479Z Compiling cpufeatures v0.3.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:11.8390855Z Compiling syn v2.0.117 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:11.8570691Z Compiling thiserror v2.0.18 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:11.8640546Z Compiling scopeguard v1.2.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:11.8761188Z Compiling chacha20 v0.10.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:11.9210418Z Compiling lock_api v0.4.14 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:11.9341193Z Compiling form_urlencoded v1.2.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:11.9611294Z Compiling untrusted v0.9.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:12.0430674Z Compiling indexmap v2.14.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:12.0510535Z Compiling heck v0.5.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:12.0786075Z Compiling rustls v0.23.40 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:12.1408451Z Compiling unicode-xid v0.2.6 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:12.1701016Z Compiling anyhow v1.0.102 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:12.2007404Z Compiling atomic-waker v1.1.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:12.2243986Z Compiling const-oid v0.10.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:12.2250167Z Compiling parking_lot_core v0.9.12 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:12.2573588Z Compiling convert_case v0.10.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:12.2960716Z Compiling zerocopy v0.8.50 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:12.3037790Z Compiling paste v1.0.15 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:12.3049996Z Compiling httparse v1.10.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:12.3310331Z Compiling num-traits v0.2.19 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:12.3600480Z Compiling jobserver v0.1.34 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:12.4214436Z Compiling hybrid-array v0.4.12 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:12.4652010Z Compiling curve25519-dalek v4.1.3 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:12.4980891Z Compiling ahash v0.8.12 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:12.5470933Z Compiling either v1.16.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:12.6251014Z Compiling powerfmt v0.2.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:12.6451242Z Compiling cc v1.2.63 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:12.7001310Z Compiling base64ct v1.8.3 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:12.7080028Z Compiling fastrand v2.4.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:12.8191344Z Compiling deranged v0.5.8 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:12.9190588Z Compiling crypto-common v0.1.7 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:12.9345591Z Compiling block-buffer v0.10.4 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:12.9500653Z Compiling http-body v1.0.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:13.0042838Z Compiling pem-rfc7468 v1.0.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:13.0501935Z Compiling digest v0.10.7 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:13.0650866Z Compiling mio v1.2.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:13.1466230Z Compiling socket2 v0.6.4 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:13.1720718Z Compiling getrandom v0.2.17 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:13.2553409Z Compiling time-core v0.1.8 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:13.2660996Z Compiling tinyvec_macros v0.1.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:13.2849422Z Compiling tower-service v0.3.3 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:13.3144878Z Compiling base64 v0.22.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:13.3450531Z Compiling rand_core v0.6.4 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:13.3820437Z Compiling vcpkg v0.2.15 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:13.4100504Z Compiling rand v0.10.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:13.4369923Z Compiling data-encoding v2.11.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:13.4598596Z Compiling pkg-config v0.3.33 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:13.4810371Z Compiling zmij v1.0.21 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:13.5180591Z Compiling try-lock v0.2.5 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:13.5790303Z Compiling num-conv v0.2.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:13.5970540Z Compiling parking_lot v0.12.5 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:13.6280370Z Compiling want v0.3.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:13.7285569Z Compiling tinyvec v1.11.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:13.7400380Z Compiling sha2 v0.10.9 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:13.8285613Z Compiling crypto-common v0.2.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:13.8390782Z Compiling block-buffer v0.12.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:13.9830798Z Compiling inout v0.1.4 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:14.0158639Z Compiling vergen-lib v9.1.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:14.0920659Z Compiling cmake v0.1.58 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:14.1190600Z Compiling n0-future v0.3.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:14.1930435Z Compiling winnow v1.0.3 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:14.2591010Z Compiling crossbeam-utils v0.8.21 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:14.2631902Z Compiling parking v2.2.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:14.2720804Z Compiling spin v0.10.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:14.3388503Z Compiling signature v2.2.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:14.3620445Z Compiling httpdate v1.0.3 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:14.3720698Z Compiling diatomic-waker v0.2.3 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:14.3850492Z Compiling cordyceps v0.3.4 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:14.4220811Z Compiling serde_json v1.0.150 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:14.4501382Z Compiling ed25519 v2.2.3 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:14.4960826Z Compiling futures-lite v2.6.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:14.5240682Z Compiling cipher v0.4.4 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:14.5520961Z Compiling netlink-packet-core v0.8.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:14.5750609Z Compiling universal-hash v0.5.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:14.6340383Z Compiling vergen-lib v0.1.6 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:14.6910288Z Compiling futures-buffered v0.2.13 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:14.7011442Z Compiling vergen v9.1.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:14.7063812Z Compiling curve25519-dalek v5.0.0-pre.6 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:14.7130382Z Compiling heapless v0.7.17 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:14.7190587Z Compiling noq-udp v0.10.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:14.7917819Z Compiling digest v0.11.3 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:14.8140474Z Compiling sync_wrapper v1.0.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:14.8988397Z Compiling opaque-debug v0.3.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:14.9236848Z Compiling allocator-api2 v0.2.21 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:14.9371609Z Compiling byteorder v1.5.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:14.9440342Z 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-21T09:42:14.9548285Z Compiling polyval v0.6.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:15.0043577Z Compiling aws-lc-sys v0.41.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:15.0090314Z Compiling ring v0.17.14 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:15.0188095Z Compiling libsqlite3-sys v0.30.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:15.1392262Z Compiling hash32 v0.2.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:15.1610413Z Compiling spin v0.9.8 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:15.2130543Z Compiling vergen-gitcl v1.0.8 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:15.2228684Z Compiling signature v3.0.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:15.3255974Z Compiling num_threads v0.1.7 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:15.3406783Z Compiling fallible-streaming-iterator v0.1.9 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:15.3621664Z Compiling fallible-iterator v0.3.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:15.3723954Z Compiling tower-layer v0.3.3 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:15.3728406Z Compiling ryu v1.0.23 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:15.4400301Z Compiling time v0.3.47 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:15.4797325Z Compiling ghash v0.5.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:15.4880588Z Compiling sha2 v0.11.0-rc.5 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:15.5708031Z Compiling ctr v0.9.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:15.5712187Z Compiling aes v0.8.4 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:15.5820475Z Compiling http-body-util v0.1.3 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:15.6190738Z Compiling fs2 v0.4.3 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:15.7420865Z Compiling aead v0.5.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:15.7755603Z 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-21T09:42:15.7896521Z Compiling openssl-probe v0.2.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:15.8020652Z Compiling crossbeam-epoch v0.9.18 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:15.8510640Z Compiling crossbeam-channel v0.5.15 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:15.8950384Z Compiling blake3 v1.8.5 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:15.9410925Z Compiling netlink-packet-route v0.29.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:16.0022020Z Compiling uuid v1.23.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:16.0730514Z Compiling memoffset v0.6.5 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:16.1910436Z Compiling aes-gcm v0.10.3 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:16.2490701Z Compiling acto v0.8.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:16.2708735Z Compiling netwatch v0.16.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:16.3370417Z Compiling noq v0.18.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:16.4152718Z Compiling mac-addr v0.3.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:16.4610880Z 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-21T09:42:16.5215705Z Compiling rustc-hash v2.1.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:16.5543079Z Compiling sorted-index-buffer v0.2.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:16.5621449Z Compiling foldhash v0.2.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:16.6266815Z Compiling lru-slab v0.1.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:16.6402629Z Compiling ref-cast v1.0.25 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:16.6490945Z Compiling rustix v1.1.4 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:16.7037344Z Compiling identity-hash v0.1.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:16.7239239Z Compiling tagptr v0.2.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:16.7299928Z Compiling thiserror v1.0.69 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:16.7751285Z Compiling xml-rs v0.8.28 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:16.8080339Z Compiling hashbrown v0.16.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:16.8840574Z Compiling synstructure v0.13.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:16.8905979Z Compiling darling_core v0.20.11 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:16.9990696Z Compiling serde_derive_internals v0.29.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:17.1826525Z Compiling netlink-packet-route v0.30.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:17.5820413Z Compiling proc-macro-crate v3.5.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:17.6477392Z Compiling xmltree v0.10.3 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:17.6679807Z Compiling errno v0.3.14 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:17.7390826Z Compiling serial-core v0.4.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:17.8150937Z Compiling termios v0.2.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:17.8720745Z Compiling ioctl-rs v0.1.6 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:17.9430724Z Compiling aho-corasick v1.1.4 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:17.9508755Z Compiling simple-dns v0.9.3 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:17.9668024Z Compiling signal-hook v0.3.18 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:17.9799103Z Compiling toml_write v0.1.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:17.9864688Z Compiling smol_str v0.1.24 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:18.0620830Z Compiling constant_time_eq v0.4.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:18.1100478Z Compiling linux-raw-sys v0.12.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:18.1170496Z Compiling regex-syntax v0.8.10 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:18.1880905Z Compiling arrayvec v0.7.6 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:18.1949302Z Compiling simdutf8 v0.1.5 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:18.2370584Z Compiling resolv-conf v0.7.6 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:18.2552039Z Compiling arrayref v0.3.9 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:18.3160407Z Compiling sha1_smol v1.0.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:18.3920738Z Compiling winnow v0.7.15 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:18.5360928Z Compiling serial-unix v0.4.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:18.5860919Z Compiling signal-hook-registry v1.4.8 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:18.7450951Z Compiling serde_derive v1.0.228 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:18.7482482Z Compiling zeroize_derive v1.4.3 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:18.7800862Z Compiling tokio-macros v2.7.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:18.9140016Z Compiling futures-macro v0.3.32 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:19.1166215Z Compiling zerofrom-derive v0.1.7 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:19.3387852Z Compiling zeroize v1.8.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:19.5173409Z Compiling yoke-derive v0.8.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:19.5786971Z Compiling tokio v1.52.3 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:19.8895348Z Compiling futures-util v0.3.32 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:20.1242321Z Compiling zerovec-derive v0.11.3 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:20.4440798Z Compiling displaydoc v0.2.6 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:20.5910336Z Compiling zerofrom v0.1.8 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:20.6772532Z Compiling tracing-attributes v0.1.31 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:20.7636770Z Compiling rustls-pki-types v1.14.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:20.8200783Z Compiling yoke v0.8.3 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:21.0510844Z Compiling thiserror-impl v2.0.18 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:21.1165865Z Compiling curve25519-dalek-derive v0.1.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:21.3109422Z Compiling zerotrie v0.2.4 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:21.4956885Z Compiling darling_macro v0.20.11 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:21.7111336Z Compiling derive_more-impl v2.1.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:21.7434966Z Compiling zerovec v0.11.6 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:21.7665463Z Compiling n0-error-macros v0.1.3 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:21.8419794Z Compiling darling v0.20.11 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:21.9056349Z Compiling derive_builder_core v0.20.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:22.2550494Z Compiling spez v0.1.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:22.3380635Z Compiling der v0.8.0-rc.10 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:22.6141784Z Compiling tinystr v0.8.3 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:22.6800529Z Compiling potential_utf v0.1.5 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:22.8077319Z Compiling icu_collections v2.2.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:22.8707585Z Compiling icu_locale_core v2.2.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:22.8740768Z Compiling n0-error v0.1.3 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:22.8831449Z Compiling pin-project-internal v1.1.13 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:23.2651042Z Compiling cobs v0.3.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:23.4194060Z Compiling derive_builder_macro v0.20.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:23.5290722Z Compiling postcard-derive v0.2.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:23.5835213Z Compiling data-encoding-macro-internal v0.1.18 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:23.7440380Z Compiling ipnet v2.12.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:24.0366742Z Compiling derive_builder v0.20.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:24.1005197Z Compiling spki v0.8.0-rc.4 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:24.2088732Z Compiling icu_provider v2.2.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:24.2096357Z Compiling prefix-trie v0.8.4 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:24.3067743Z Compiling pin-project v1.1.13 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:24.3338512Z Compiling pkcs8 v0.11.0-rc.10 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:24.3850694Z Compiling futures-executor v0.3.32 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:24.4532684Z Compiling ed25519-dalek v2.2.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:24.5111269Z Compiling once_cell v1.21.4 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:24.5650442Z Compiling icu_properties v2.2.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:24.6149375Z Compiling icu_normalizer v2.2.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:24.6290624Z Compiling futures v0.3.32 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:24.6340883Z Compiling ed25519 v3.0.0-rc.4 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:24.7031125Z 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-21T09:42:24.7563369Z Compiling tracing-core v0.1.36 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:24.9685564Z Compiling hashbrown v0.14.5 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:25.1173414Z Compiling data-encoding-macro v0.1.20 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:25.1810635Z Compiling rustls-native-certs v0.8.4 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:25.1888922Z Compiling strum_macros v0.28.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:25.5230821Z Compiling tracing v0.1.44 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:25.5943700Z Compiling postcard v1.1.3 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:25.6595177Z Compiling async-trait v0.1.89 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:25.6770525Z Compiling iroh-metrics-derive v0.4.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:25.8070880Z Compiling tokio-util v0.7.18 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:25.8255995Z Compiling hashlink v0.9.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:26.0881162Z Compiling idna_adapter v1.2.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:26.1514031Z Compiling netlink-sys v0.8.8 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:26.2160739Z Compiling idna v1.1.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:26.2250875Z Compiling tower v0.5.3 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:26.3329723Z Compiling rusqlite v0.32.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:26.3935029Z Compiling enum-assoc v1.3.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:26.4639105Z Compiling num_enum_derive v0.7.6 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:26.4879961Z Compiling netlink-proto v0.12.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:26.5204774Z Compiling derive_more v2.1.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:26.5334849Z Compiling ed25519-dalek v3.0.0-pre.6 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:26.6720605Z Compiling url v2.5.8 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:26.7300745Z Compiling netdev v0.42.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:26.7661341Z Compiling iroh-metrics v0.38.3 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:26.8615496Z Compiling iroh-relay v0.98.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:26.9240501Z Compiling h2 v0.4.14 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:27.0921115Z Compiling n0-watcher v0.6.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:27.1617604Z Compiling tokio-stream v0.1.18 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:27.2631458Z Compiling moka v0.12.15 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:27.2655112Z Compiling toml_datetime v0.6.11 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:27.2827142Z Compiling serde_spanned v0.6.9 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:27.3948901Z Compiling ref-cast-impl v1.0.25 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:27.4277043Z Compiling thiserror-impl v1.0.69 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:27.6147196Z Compiling hickory-proto v0.26.0-beta.4 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:27.6532681Z 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-21T09:42:27.7861994Z Compiling num_enum v0.7.6 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:27.8541245Z Compiling iroh-base v0.98.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:27.8907335Z Compiling attohttpc v0.30.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:27.9102927Z Compiling tower-http v0.6.11 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:28.1600960Z Compiling toml_edit v0.22.27 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:28.2111079Z Compiling strum v0.28.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:28.3410451Z Compiling iroh-dns v0.98.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:28.3510607Z Compiling webpki-roots v1.0.7 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:28.4610790Z Compiling regex-automata v0.4.14 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:28.4664129Z Compiling schemars_derive v1.2.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:28.5065463Z Compiling lru v0.16.4 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:28.6319534Z Compiling darling_core v0.23.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:28.6601147Z Compiling serde_bytes v0.11.19 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:28.6870366Z Compiling hmac v0.12.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:28.8320499Z Compiling seize v0.5.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:28.9151567Z Compiling iroh v0.98.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:28.9547424Z Compiling pin-utils v0.1.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:29.0307377Z Compiling dyn-clone v1.0.20 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:29.0417453Z Compiling utf8parse v0.2.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:29.0457117Z Compiling bitflags v1.3.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:29.1301014Z Compiling cmov v0.5.4 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:29.1350390Z Compiling rustix v0.38.44 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:29.1700745Z Compiling anstyle-parse v1.0.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:29.1924431Z Compiling papaya v0.2.4 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:29.3600740Z Compiling ctutils v0.4.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:29.3717559Z Compiling nix v0.25.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:29.3748406Z Compiling filedescriptor v0.8.3 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:29.5480114Z Compiling hkdf v0.12.4 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:29.5790648Z Compiling backon v1.6.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:29.6420676Z Compiling serial v0.4.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:29.6970152Z Compiling foldhash v0.1.5 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:29.7185326Z Compiling linux-raw-sys v0.4.15 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:29.7470616Z Compiling shell-words v1.1.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:29.8530601Z Compiling colorchoice v1.0.5 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:29.8844251Z Compiling anstyle v1.0.14 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:29.9000520Z Compiling downcast-rs v1.2.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:29.9240174Z Compiling anstyle-query v1.1.5 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:29.9568580Z Compiling is_terminal_polyfill v1.70.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:30.0050766Z Compiling instability v0.3.12 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:30.0403785Z Compiling signal-hook-mio v0.2.5 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:30.0470491Z Compiling hashbrown v0.15.5 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:30.0569375Z Compiling spake2 v0.4.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:30.1727639Z Compiling anstream v1.0.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:30.1937464Z Compiling terminal_size v0.4.4 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:30.1938642Z Compiling strum_macros v0.26.4 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:30.3500189Z Compiling sha1 v0.10.6 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:30.4195546Z 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-21T09:42:30.5690663Z Compiling swarm-discovery v0.6.0-alpha.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:30.5910994Z Compiling schemars v1.2.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:30.6761472Z Compiling itertools v0.13.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:30.9271033Z Compiling toml v0.8.23 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:31.3672746Z Compiling regex v1.12.3 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:31.3925180Z Compiling castaway v0.2.4 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:31.5020669Z Compiling indoc v2.0.7 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:31.9110808Z 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-21T09:42:32.0436772Z Compiling unicode-width v0.1.14 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:32.1290502Z Compiling doctest-file v1.1.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:32.3123540Z Compiling hyper v1.10.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:32.3330830Z Compiling static_assertions v1.1.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:32.3840922Z Compiling clap_lex v1.1.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:32.4162458Z Compiling darling_macro v0.23.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:32.6328634Z Compiling clap_builder v4.6.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:32.6620652Z Compiling interprocess v2.4.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:32.8100697Z Compiling darling v0.23.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:32.8220741Z Compiling strum v0.26.3 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:32.8329470Z Compiling unicode-truncate v1.1.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:32.9520404Z Compiling compact_str v0.8.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:33.0258859Z Compiling crossterm v0.28.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:33.3120552Z Compiling lru v0.12.5 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:33.4550909Z Compiling clap_derive v4.6.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:33.4743837Z Compiling cassowary v0.3.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:33.4868333Z Compiling iana-time-zone v0.1.65 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:33.5764638Z Compiling unicode-width v0.2.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:33.8640679Z Compiling portable-pty v0.8.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:33.8751085Z Compiling chrono v0.4.45 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:33.9030260Z Compiling nucleo-matcher v0.3.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:33.9610911Z Compiling qrcode v0.14.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:34.2914971Z 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-21T09:42:34.3710967Z Compiling ratatui v0.29.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:34.5982968Z Compiling hyper-util v0.1.20 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:34.7970410Z Compiling tempfile v3.27.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:34.9511079Z 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-21T09:42:35.7252274Z Compiling clap v4.6.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:36.6953144Z Compiling igd-next v0.17.1 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:37.7296526Z Compiling portmapper v0.16.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:42.2304482Z Compiling rustls-webpki v0.103.13 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:45.3837133Z Compiling tokio-rustls v0.26.4 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:45.3837523Z Compiling rustls-platform-verifier v0.7.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:45.3837786Z Compiling noq-proto v0.17.0 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:45.5321891Z Compiling hyper-rustls v0.27.9 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:45.5322448Z Compiling hickory-net v0.26.0-beta.4 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:45.5322862Z Compiling tokio-websockets v0.13.2 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:45.6695335Z Compiling reqwest v0.13.4 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:42:46.5599472Z Compiling hickory-resolver v0.26.0-beta.4 n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:43:00.5269979Z 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-21T09:43:01.8989669Z 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-21T09:43:09.1085836Z 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-21T09:43:12.7657138Z Finished `test` profile [unoptimized + debuginfo] target(s) in 1m 02s n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:43:12.7897413Z 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-21T09:43:12.7911240Z n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:43:12.7911550Z running 1 test n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:43:18.9808729Z test new_brain_serves_against_old_broker ... ok n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:43:18.9809222Z n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:43:18.9809570Z test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 6.19s n1-gate (self-hosted, Linux, kitsubito) N-1 gate (new-brain × old-broker) — linux 2026-06-21T09:43:18.9809945Z n1-gate (self-hosted, Linux, kitsubito) Post Run actions/checkout@v5 2026-06-21T09:43:19.0010365Z Post job cleanup. n1-gate (self-hosted, Linux, kitsubito) Post Run actions/checkout@v5 2026-06-21T09:43:19.0653147Z [command]/usr/bin/git version n1-gate (self-hosted, Linux, kitsubito) Post Run actions/checkout@v5 2026-06-21T09:43:19.0716422Z git version 2.43.0 n1-gate (self-hosted, Linux, kitsubito) Post Run actions/checkout@v5 2026-06-21T09:43:19.0748765Z Temporarily overriding HOME='/home/reavus/actions-runner/_work/_temp/149ab891-e38c-4159-b7c9-05a69d1e8e42' before making global git config changes n1-gate (self-hosted, Linux, kitsubito) Post Run actions/checkout@v5 2026-06-21T09:43:19.0749761Z 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-21T09:43:19.0752628Z [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-21T09:43:19.0782318Z [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-21T09:43:19.0809129Z [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-21T09:43:19.0992034Z [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-21T09:43:19.1012210Z http.https://github.com/.extraheader n1-gate (self-hosted, Linux, kitsubito) Post Run actions/checkout@v5 2026-06-21T09:43:19.1019224Z [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-21T09:43:19.1044234Z [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-21T09:43:19.1238832Z [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-21T09:43:19.1263240Z [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-21T09:43:19.1577148Z Cleaning up orphan processes n1-gate (self-hosted, Linux, kitsubito) Complete job 2026-06-21T09:43:19.2050599Z Terminate orphan process: pid (3536630) (spt) traceability Set up job 2026-06-21T09:41:59.6912305Z Current runner version: '2.335.1' traceability Set up job 2026-06-21T09:41:59.6917520Z Runner name: 'kitsubito' traceability Set up job 2026-06-21T09:41:59.6918034Z Runner group name: 'Default' traceability Set up job 2026-06-21T09:41:59.6918664Z Machine name: 'KITSUBITO' traceability Set up job 2026-06-21T09:41:59.6920601Z ##[group]GITHUB_TOKEN Permissions traceability Set up job 2026-06-21T09:41:59.6922365Z Contents: read traceability Set up job 2026-06-21T09:41:59.6922778Z Metadata: read traceability Set up job 2026-06-21T09:41:59.6923151Z Packages: read traceability Set up job 2026-06-21T09:41:59.6923518Z ##[endgroup] traceability Set up job 2026-06-21T09:41:59.6925076Z Secret source: Actions traceability Set up job 2026-06-21T09:41:59.6925598Z Prepare workflow directory traceability Set up job 2026-06-21T09:41:59.7276778Z Prepare all required actions traceability Set up job 2026-06-21T09:41:59.7304851Z Getting action download info traceability Set up job 2026-06-21T09:42:00.0693619Z Download action repository 'actions/checkout@v5' (SHA:93cb6efe18208431cddfb8368fd83d5badbf9bfd) traceability Set up job 2026-06-21T09:42:00.6081481Z Complete job name: traceability traceability Run actions/checkout@v5 2026-06-21T09:42:00.6892727Z ##[group]Run actions/checkout@v5 traceability Run actions/checkout@v5 2026-06-21T09:42:00.6893485Z with: traceability Run actions/checkout@v5 2026-06-21T09:42:00.6893866Z repository: SaberMage/spt-core traceability Run actions/checkout@v5 2026-06-21T09:42:00.6897322Z token: *** traceability Run actions/checkout@v5 2026-06-21T09:42:00.6897685Z ssh-strict: true traceability Run actions/checkout@v5 2026-06-21T09:42:00.6898047Z ssh-user: git traceability Run actions/checkout@v5 2026-06-21T09:42:00.6898428Z persist-credentials: true traceability Run actions/checkout@v5 2026-06-21T09:42:00.6898828Z clean: true traceability Run actions/checkout@v5 2026-06-21T09:42:00.6899295Z sparse-checkout-cone-mode: true traceability Run actions/checkout@v5 2026-06-21T09:42:00.6899723Z fetch-depth: 1 traceability Run actions/checkout@v5 2026-06-21T09:42:00.6900071Z fetch-tags: false traceability Run actions/checkout@v5 2026-06-21T09:42:00.6900436Z show-progress: true traceability Run actions/checkout@v5 2026-06-21T09:42:00.6900794Z lfs: false traceability Run actions/checkout@v5 2026-06-21T09:42:00.6901133Z submodules: false traceability Run actions/checkout@v5 2026-06-21T09:42:00.6901506Z set-safe-directory: true traceability Run actions/checkout@v5 2026-06-21T09:42:00.6902099Z ##[endgroup] traceability Run actions/checkout@v5 2026-06-21T09:42:00.7718032Z Syncing repository: SaberMage/spt-core traceability Run actions/checkout@v5 2026-06-21T09:42:00.7719724Z ##[group]Getting Git version info traceability Run actions/checkout@v5 2026-06-21T09:42:00.7720371Z Working directory is '/home/reavus/actions-runner/_work/spt-core/spt-core' traceability Run actions/checkout@v5 2026-06-21T09:42:00.7721275Z [command]/usr/bin/git version traceability Run actions/checkout@v5 2026-06-21T09:42:00.7721686Z git version 2.43.0 traceability Run actions/checkout@v5 2026-06-21T09:42:00.7727514Z ##[endgroup] traceability Run actions/checkout@v5 2026-06-21T09:42:00.7738454Z Temporarily overriding HOME='/home/reavus/actions-runner/_work/_temp/e29a321e-65a3-453f-bce7-72b0b3456078' before making global git config changes traceability Run actions/checkout@v5 2026-06-21T09:42:00.7739706Z Adding repository directory to the temporary git global config as a safe directory traceability Run actions/checkout@v5 2026-06-21T09:42:00.7741920Z [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-21T09:42:00.7773590Z [command]/usr/bin/git config --local --get remote.origin.url traceability Run actions/checkout@v5 2026-06-21T09:42:00.7792215Z https://github.com/SaberMage/spt-core traceability Run actions/checkout@v5 2026-06-21T09:42:00.7803643Z ##[group]Removing previously created refs, to avoid conflicts traceability Run actions/checkout@v5 2026-06-21T09:42:00.7806763Z [command]/usr/bin/git rev-parse --symbolic-full-name --verify --quiet HEAD traceability Run actions/checkout@v5 2026-06-21T09:42:00.7826658Z HEAD traceability Run actions/checkout@v5 2026-06-21T09:42:00.7870405Z ##[endgroup] traceability Run actions/checkout@v5 2026-06-21T09:42:00.7871350Z [command]/usr/bin/git submodule status traceability Run actions/checkout@v5 2026-06-21T09:42:00.8059277Z ##[group]Cleaning the repository traceability Run actions/checkout@v5 2026-06-21T09:42:00.8059997Z [command]/usr/bin/git clean -ffdx traceability Run actions/checkout@v5 2026-06-21T09:42:00.8086123Z Removing traceable-reqs traceability Run actions/checkout@v5 2026-06-21T09:42:00.8092634Z [command]/usr/bin/git reset --hard HEAD traceability Run actions/checkout@v5 2026-06-21T09:42:00.8137157Z HEAD is now at c0bf77b0b Merge eb73da70b21789083fb6422e895676c0d37fa24f into 86f20ac831033a20bd5e096b1c318a75249179f3 traceability Run actions/checkout@v5 2026-06-21T09:42:00.8142087Z ##[endgroup] traceability Run actions/checkout@v5 2026-06-21T09:42:00.8143249Z ##[group]Disabling automatic garbage collection traceability Run actions/checkout@v5 2026-06-21T09:42:00.8145961Z [command]/usr/bin/git config --local gc.auto 0 traceability Run actions/checkout@v5 2026-06-21T09:42:00.8167607Z ##[endgroup] traceability Run actions/checkout@v5 2026-06-21T09:42:00.8168293Z ##[group]Setting up auth traceability Run actions/checkout@v5 2026-06-21T09:42:00.8172986Z [command]/usr/bin/git config --local --name-only --get-regexp core\.sshCommand traceability Run actions/checkout@v5 2026-06-21T09:42:00.8197556Z [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-21T09:42:00.8381952Z [command]/usr/bin/git config --local --name-only --get-regexp http\.https\:\/\/github\.com\/\.extraheader traceability Run actions/checkout@v5 2026-06-21T09:42:00.8405028Z [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-21T09:42:00.8589989Z [command]/usr/bin/git config --local --name-only --get-regexp ^includeIf\.gitdir: traceability Run actions/checkout@v5 2026-06-21T09:42:00.8615008Z [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-21T09:42:00.8801883Z [command]/usr/bin/git config --local http.https://github.com/.extraheader AUTHORIZATION: basic *** traceability Run actions/checkout@v5 2026-06-21T09:42:00.8829362Z ##[endgroup] traceability Run actions/checkout@v5 2026-06-21T09:42:00.8829987Z ##[group]Fetching the repository traceability Run actions/checkout@v5 2026-06-21T09:42:00.8835714Z [command]/usr/bin/git -c protocol.version=2 fetch --no-tags --prune --no-recurse-submodules --depth=1 origin +1cafc8afb1ed6606350cab07e057989c02fea0c7:refs/remotes/pull/27/merge traceability Run actions/checkout@v5 2026-06-21T09:42:01.2943030Z From https://github.com/SaberMage/spt-core traceability Run actions/checkout@v5 2026-06-21T09:42:01.2944383Z + c0bf77b0b...1cafc8afb 1cafc8afb1ed6606350cab07e057989c02fea0c7 -> pull/27/merge (forced update) traceability Run actions/checkout@v5 2026-06-21T09:42:01.2964365Z ##[endgroup] traceability Run actions/checkout@v5 2026-06-21T09:42:01.2964970Z ##[group]Determining the checkout info traceability Run actions/checkout@v5 2026-06-21T09:42:01.2966278Z ##[endgroup] traceability Run actions/checkout@v5 2026-06-21T09:42:01.2970466Z [command]/usr/bin/git sparse-checkout disable traceability Run actions/checkout@v5 2026-06-21T09:42:01.3007315Z [command]/usr/bin/git config --local --unset-all extensions.worktreeConfig traceability Run actions/checkout@v5 2026-06-21T09:42:01.3031169Z ##[group]Checking out the ref traceability Run actions/checkout@v5 2026-06-21T09:42:01.3034882Z [command]/usr/bin/git checkout --progress --force refs/remotes/pull/27/merge traceability Run actions/checkout@v5 2026-06-21T09:42:01.3117835Z Warning: you are leaving 1 commit behind, not connected to traceability Run actions/checkout@v5 2026-06-21T09:42:01.3118647Z any of your branches: traceability Run actions/checkout@v5 2026-06-21T09:42:01.3118938Z traceability Run actions/checkout@v5 2026-06-21T09:42:01.3119859Z c0bf77b0b Merge eb73da70b21789083fb6422e895676c0d37fa24f into 86f20ac831033a20bd5e096b1c318a75249179f3 traceability Run actions/checkout@v5 2026-06-21T09:42:01.3120707Z traceability Run actions/checkout@v5 2026-06-21T09:42:01.3121293Z If you want to keep it by creating a new branch, this may be a good time traceability Run actions/checkout@v5 2026-06-21T09:42:01.3122104Z to do so with: traceability Run actions/checkout@v5 2026-06-21T09:42:01.3122366Z traceability Run actions/checkout@v5 2026-06-21T09:42:01.3122609Z git branch c0bf77b0b traceability Run actions/checkout@v5 2026-06-21T09:42:01.3122980Z traceability Run actions/checkout@v5 2026-06-21T09:42:01.3123644Z HEAD is now at 1cafc8afb Merge 6a27b0b9a2658ec5039ce38b939c6bfdad2757fa into 86f20ac831033a20bd5e096b1c318a75249179f3 traceability Run actions/checkout@v5 2026-06-21T09:42:01.3127475Z ##[endgroup] traceability Run actions/checkout@v5 2026-06-21T09:42:01.3161684Z [command]/usr/bin/git log -1 --format=%H traceability Run actions/checkout@v5 2026-06-21T09:42:01.3188705Z 1cafc8afb1ed6606350cab07e057989c02fea0c7 traceability Install traceable-reqs 2026-06-21T09:42:01.3372228Z ##[group]Run WANT=0.1.2 traceability Install traceable-reqs 2026-06-21T09:42:01.3372723Z WANT=0.1.2 traceability Install traceable-reqs 2026-06-21T09:42:01.3373150Z BIN="$HOME/.local/bin/traceable-reqs" traceability Install traceable-reqs 2026-06-21T09:42:01.3373731Z if [ -x "$BIN" ] && "$BIN" --version | grep -q " $WANT\$"; then traceability Install traceable-reqs 2026-06-21T09:42:01.3374281Z  ln -sf "$BIN" ./traceable-reqs traceability Install traceable-reqs 2026-06-21T09:42:01.3374718Z else traceability Install traceable-reqs 2026-06-21T09:42:01.3375187Z  # Build OUTSIDE the checkout: a clone inside it gets adopted by traceability Install traceable-reqs 2026-06-21T09:42:01.3375843Z  # the spt-core cargo workspace and refuses to build. traceability Install traceable-reqs 2026-06-21T09:42:01.3376371Z  SRC="$RUNNER_TEMP/tr-src" traceability Install traceable-reqs 2026-06-21T09:42:01.3376797Z  rm -rf "$SRC" traceability Install traceable-reqs 2026-06-21T09:42:01.3377212Z  git clone --depth 1 --branch "v$WANT" \ traceability Install traceable-reqs 2026-06-21T09:42:01.3377905Z  "https://x-access-token:${GH_TOKEN}@github.com/BigscreenVR/traceable-reqs" "$SRC" traceability Install traceable-reqs 2026-06-21T09:42:01.3378638Z  cargo build --release --manifest-path "$SRC/rust/Cargo.toml" traceability Install traceable-reqs 2026-06-21T09:42:01.3379301Z  mkdir -p "$HOME/.local/bin" traceability Install traceable-reqs 2026-06-21T09:42:01.3379811Z  cp "$SRC/rust/target/release/traceable-reqs" "$BIN" traceability Install traceable-reqs 2026-06-21T09:42:01.3380322Z  ln -sf "$BIN" ./traceable-reqs traceability Install traceable-reqs 2026-06-21T09:42:01.3380739Z fi traceability Install traceable-reqs 2026-06-21T09:42:01.3381086Z ./traceable-reqs --version traceability Install traceable-reqs 2026-06-21T09:42:01.3396505Z shell: /usr/bin/bash -e {0} traceability Install traceable-reqs 2026-06-21T09:42:01.3396934Z env: traceability Install traceable-reqs 2026-06-21T09:42:01.3397688Z GH_TOKEN: *** traceability Install traceable-reqs 2026-06-21T09:42:01.3398208Z ##[endgroup] traceability Install traceable-reqs 2026-06-21T09:42:01.3475244Z traceable-reqs 0.1.2 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3528410Z ##[group]Run ./traceable-reqs check --json traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3529037Z ./traceable-reqs check --json traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3541623Z shell: /usr/bin/bash -e {0} traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3542022Z ##[endgroup] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3774845Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3775813Z "schemaVersion": 1, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3776633Z "summary": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3777310Z "requirementCount": 276, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3778145Z "completeCount": 276, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3778888Z "incompleteCount": 0, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3779700Z "findingCount": 0 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3780378Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3780964Z "requirements": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3781608Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3782218Z "id": "REQ-API-1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3783143Z "title": "api prefix and adapter_name on every machinery invocation", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3784228Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3784958Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3785568Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3786188Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3786841Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3787431Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3788066Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3788686Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3789349Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3789888Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3790379Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3790914Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3791485Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3792005Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3792543Z "path": "crates/spt/src/api/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3793223Z "line": 15 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3793781Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3794261Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3794749Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3795222Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3797186Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3797776Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3798330Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3798907Z "path": "crates/spt/tests/contract_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3799703Z "line": 13 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3800245Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3800720Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3801197Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3801688Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3802212Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3802786Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3803315Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3803878Z "path": "crates/spt/src/api/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3804569Z "line": 717 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3805118Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3805603Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3806153Z "path": "crates/spt/src/api/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3806826Z "line": 804 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3807365Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3807848Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3808328Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3808804Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3809352Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3809801Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3810287Z "id": "REQ-API-2", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3811123Z "title": "The api subcommand surface (bind/listen/poll/state/worker/boundary/...)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3812049Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3812605Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3813270Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3813952Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3814320Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3814696Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3815063Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3815440Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3815865Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3816254Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3816595Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3816972Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3817390Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3817768Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3818179Z "path": "crates/spt-store/src/history.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3819073Z "line": 17 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3819455Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3819789Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3820361Z "path": "crates/spt/src/api/delivery.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3820852Z "line": 20 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3821222Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3821549Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3821936Z "path": "crates/spt/src/api/delivery.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3822422Z "line": 142 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3822798Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3823132Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3823524Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3824014Z "line": 24 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3824383Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3824722Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3825108Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3825590Z "line": 41 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3825952Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3826285Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3826685Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3827170Z "line": 213 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3827546Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3827875Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3828251Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3828734Z "line": 255 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3829167Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3829500Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3829871Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3830544Z "line": 334 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3831079Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3831551Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3832109Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3832791Z "line": 397 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3833330Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3833808Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3834356Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3835053Z "line": 436 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3835587Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3836055Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3836598Z "path": "crates/spt/src/api/worker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3837283Z "line": 17 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3837806Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3838298Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3838845Z "path": "crates/spt/src/api/worker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3839618Z "line": 30 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3840155Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3840643Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3841200Z "path": "crates/spt/src/api/worker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3841868Z "line": 63 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3842390Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3842871Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3843405Z "path": "crates/spt/src/api/worker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3844129Z "line": 77 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3844515Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3844979Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3845442Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3845851Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3846343Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3846824Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3847250Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3847901Z "path": "crates/spt/tests/contract_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3848441Z "line": 14 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3849076Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3849563Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3850103Z "path": "crates/spt/tests/contract_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3850662Z "line": 187 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3851136Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3851569Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3851979Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3852438Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3852889Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3887645Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3888068Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3888474Z "path": "crates/spt-store/src/history.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3889284Z "line": 82 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3889641Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3889974Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3890503Z "path": "crates/spt/src/api/delivery.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3890963Z "line": 279 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3891326Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3891656Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3892038Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3892503Z "line": 709 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3892856Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3893180Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3893547Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3894006Z "line": 720 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3894368Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3894687Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3895053Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3895513Z "line": 873 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3895871Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3896196Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3896572Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3897025Z "line": 919 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3897387Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3897702Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3898058Z "path": "crates/spt/src/api/worker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3898510Z "line": 143 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3898853Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3899234Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3899616Z "path": "crates/spt/src/api/worker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3900065Z "line": 187 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3900422Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3900758Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3901067Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3901387Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3901696Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3902011Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3902331Z "id": "REQ-API-3", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3902783Z "title": "commune/signoff are file-drops, not commands", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3903285Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3903661Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3903999Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3904333Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3904661Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3904980Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3905313Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3905661Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3906049Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3906417Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3906737Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3907085Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3907457Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3907805Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3908180Z "path": "crates/spt-live/src/ingest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3908633Z "line": 27 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3909046Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3909389Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3909766Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3910228Z "line": 566 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3910630Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3910945Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3911257Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3911575Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3911904Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3912290Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3912647Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3913019Z "path": "crates/spt/tests/contract_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3913478Z "line": 261 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3913840Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3914153Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3914463Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3914768Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3915107Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3915474Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3915827Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3916184Z "path": "crates/spt-live/src/ingest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3916638Z "line": 280 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3916987Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3917307Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3917669Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3918236Z "line": 948 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3918585Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3919060Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3919829Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3920222Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3920588Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3920950Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3921341Z "id": "REQ-API-4", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3924593Z "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-21T09:42:01.3927423Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3927867Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3928286Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3928634Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3928939Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3929320Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3929639Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3930027Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3930453Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3930839Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3931215Z "path": "CONTEXT.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3931663Z "line": 149 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3932055Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3932420Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3932772Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3933134Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3933519Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3933939Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3934340Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3934735Z "path": "crates/spt/src/api/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3935225Z "line": 484 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3935574Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3935894Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3936194Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3936504Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3936843Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3937228Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3937574Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3937883Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3938217Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3938584Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3938927Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3939725Z "path": "crates/spt/src/api/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3940342Z "line": 657 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3940798Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3941198Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3941656Z "path": "crates/spt/src/api/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3942204Z "line": 681 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3942635Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3943018Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3943450Z "path": "crates/spt/src/api/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3943994Z "line": 705 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3944456Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3944839Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3945202Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3945572Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3945943Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3946300Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3946686Z "id": "REQ-ARCH-1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3947216Z "title": "Many small acyclically-layered crates", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3947798Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3948252Z "impl" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3948652Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3949097Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3949435Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3949773Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3950155Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3950498Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3950811Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3951138Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3951524Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3951864Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3952221Z "path": "crates/spt-msg/src/lib.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3952865Z "line": 18 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3953209Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3953620Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3953981Z "path": "crates/spt-proto/src/lib.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3954426Z "line": 12 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3954774Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3955094Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3955456Z "path": "crates/spt-store/src/lib.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3955899Z "line": 12 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3956250Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3956579Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3956894Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3957218Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3957585Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3957973Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3958335Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3958648Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3959112Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3959518Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3959881Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3960181Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3960477Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3960792Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3961117Z "id": "REQ-ARCH-2", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3961594Z "title": "Public SDK surface is spt-proto, spt-runtime, spt-msg", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3962119Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3962481Z "impl" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3962886Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3963464Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3963882Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3964351Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3964838Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3965262Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3965758Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3966187Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3966688Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3967144Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3967613Z "path": "crates/spt-runtime/src/lib.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3968194Z "line": 18 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3968650Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3969259Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3969701Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3970112Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3970593Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3971061Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3971494Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3971946Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3972393Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3972925Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3973370Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3973746Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3974199Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3974604Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3975031Z "id": "REQ-ARCH-3", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3975684Z "title": "Wire-protocol version independent of crate semver, N-1 compat window", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3976389Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3976928Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3977342Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3977766Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3978206Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3978639Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3979269Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3979744Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3980171Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3980687Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3981101Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3981617Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3982050Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3982497Z "path": "crates/spt-proto/src/version.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3983095Z "line": 34 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3983530Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3983977Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3984479Z "path": "crates/spt-proto/src/version.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3985016Z "line": 41 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3985500Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3985906Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3986339Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3986802Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3987288Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3987869Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3988517Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3989085Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3989586Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3990223Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3990704Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3991184Z "path": "crates/spt-proto/src/version.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3991709Z "line": 51 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3992258Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3992661Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3993181Z "path": "crates/spt-proto/src/version.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3993727Z "line": 71 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3994162Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3994642Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3995101Z "path": "crates/spt-proto/src/version.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3995661Z "line": 83 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3996161Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3996551Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3997015Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3997414Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3997838Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3998245Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3998649Z "id": "REQ-ARCH-4", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.3999420Z "title": "Copy-verbatim the commodity layer from the sister project", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4000088Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4000589Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4001019Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4001463Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4001906Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4002330Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4002766Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4003280Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4003713Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4004150Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4004592Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4005070Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4005522Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4005986Z "path": "crates/spt-proto/src/event.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4006563Z "line": 165 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4007050Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4007492Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4007965Z "path": "crates/spt-proto/src/event.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4008509Z "line": 188 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4009074Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4009533Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4009976Z "path": "crates/spt-proto/src/event.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4010624Z "line": 208 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4011054Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4011509Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4011970Z "path": "crates/spt-proto/src/event.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4012491Z "line": 223 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4013002Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4013406Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4013883Z "path": "crates/spt-proto/src/event.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4014479Z "line": 273 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4014905Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4015377Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4015772Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4016198Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4016654Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4017113Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4017606Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4018043Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4018507Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4019094Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4019559Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4020060Z "path": "crates/spt-proto/src/event.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4020598Z "line": 334 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4021047Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4021513Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4022018Z "path": "crates/spt-proto/src/event.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4022583Z "line": 344 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4023037Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4023432Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4023938Z "path": "crates/spt-proto/src/event.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4024486Z "line": 355 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4024955Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4025441Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4026017Z "path": "crates/spt-proto/src/event.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4026638Z "line": 366 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4027186Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4027611Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4028094Z "path": "crates/spt-proto/src/event.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4028632Z "line": 378 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4029257Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4029715Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4030214Z "path": "crates/spt-proto/src/event.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4030786Z "line": 391 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4031240Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4031712Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4032160Z "path": "crates/spt-proto/src/event.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4032700Z "line": 402 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4033230Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4033653Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4040247Z "path": "crates/spt-proto/src/event.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4040736Z "line": 419 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4041112Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4041427Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4041800Z "path": "crates/spt-proto/src/event.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4042272Z "line": 547 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4042629Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4042948Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4043265Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4043575Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4043884Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4044185Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4044510Z "id": "REQ-CLI-1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4046413Z "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-21T09:42:01.4048320Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4048708Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4049114Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4049447Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4049772Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4050111Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4050455Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4050831Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4051188Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4051507Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4051855Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4052231Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4052588Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4052947Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4053390Z "line": 225 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4053755Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4054079Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4054426Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4054859Z "line": 1093 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4055213Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4055533Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4055881Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4056323Z "line": 1720 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4056687Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4057002Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4057354Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4057784Z "line": 3124 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4058133Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4058443Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4058758Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4059146Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4059489Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4059874Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4060241Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4060541Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4060885Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4061257Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4061611Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4061967Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4062401Z "line": 7947 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4062926Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4063250Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4063556Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4063870Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4064268Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4064572Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4064896Z "id": "REQ-CLI-2", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4066226Z "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-21T09:42:01.4067585Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4067953Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4068282Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4068592Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4068907Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4069318Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4069664Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4070059Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4070415Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4070726Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4071064Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4071440Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4071793Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4072166Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4072641Z "line": 414 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4072994Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4073309Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4073685Z "path": "crates/spt-daemon/src/endpoint.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4074153Z "line": 97 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4074501Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4074819Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4075185Z "path": "crates/spt-daemon/src/seedmap.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4075641Z "line": 256 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4076004Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4076319Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4076663Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4077091Z "line": 434 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4077448Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4077761Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4078099Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4078522Z "line": 1174 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4078890Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4079282Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4079635Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4080052Z "line": 1958 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4080403Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4080732Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4081080Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4081491Z "line": 2047 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4081858Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4082173Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4082516Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4082944Z "line": 2108 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4083301Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4083611Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4083921Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4084235Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4084579Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4084961Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4085346Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4085716Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4086059Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4086435Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4086779Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4087155Z "path": "crates/spt-daemon/src/seedmap.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4087619Z "line": 338 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4087966Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4088288Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4088631Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4089141Z "line": 8102 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4089508Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4089828Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4090138Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4090439Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4090741Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4091044Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4091359Z "id": "REQ-CLI-3", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4092685Z "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-21T09:42:01.4094277Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4094649Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4094968Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4095283Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4095594Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4095930Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4096262Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4096647Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4097000Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4097319Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4097653Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4098025Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4098374Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4098734Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4099233Z "line": 1087 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4099605Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4099924Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4100235Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4100554Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4100897Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4101287Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4101638Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4101953Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4102296Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4102663Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4103007Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4103354Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4103793Z "line": 7912 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4104149Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4104459Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4104774Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4105089Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4105432Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4105772Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4106101Z "id": "REQ-CLI-4", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4109641Z "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-21T09:42:01.4112698Z "requiredStages": [], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4113074Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4113409Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4113753Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4114135Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4114488Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4114806Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4115158Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4115587Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4115934Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4116288Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4116728Z "line": 5678 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4117088Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4117406Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4117716Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4118030Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4118373Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4118750Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4119174Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4119480Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4119811Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4120196Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4120550Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4120865Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4121175Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4121475Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4121799Z "id": "REQ-CLI-HELP-MARKDOWN", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4126481Z "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-21T09:42:01.4131299Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4131667Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4132006Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4132326Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4132631Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4132963Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4133304Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4133681Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4134024Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4134343Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4134677Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4135053Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4135397Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4135758Z "path": "crates/spt/src/helpfmt.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4136212Z "line": 8 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4136565Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4136894Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4137251Z "path": "crates/spt/src/helpfmt.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4137685Z "line": 51 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4138046Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4138358Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4138711Z "path": "crates/spt/src/helpfmt.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4139651Z "line": 82 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4140024Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4140348Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4140706Z "path": "crates/spt/src/helpfmt.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4141140Z "line": 229 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4141497Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4141812Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4142118Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4142423Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4142766Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4143157Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4143513Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4143820Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4144164Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4144528Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4144927Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4145275Z "path": "crates/spt/src/helpfmt.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4145733Z "line": 249 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4146087Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4146418Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4146767Z "path": "crates/spt/src/helpfmt.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4147211Z "line": 256 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4147563Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4147892Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4148231Z "path": "crates/spt/src/helpfmt.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4148678Z "line": 263 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4149096Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4149420Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4149773Z "path": "crates/spt/src/helpfmt.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4150225Z "line": 270 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4150579Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4150904Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4151256Z "path": "crates/spt/src/helpfmt.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4151700Z "line": 297 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4152048Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4152382Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4152883Z "path": "crates/spt/src/helpfmt.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4153331Z "line": 307 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4153785Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4154107Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4154453Z "path": "crates/spt/src/helpfmt.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4154897Z "line": 317 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4155249Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4155573Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4155945Z "path": "crates/spt/src/helpfmt.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4156371Z "line": 331 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4156743Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4157070Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4157423Z "path": "crates/spt/src/helpfmt.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4157856Z "line": 340 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4158199Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4158528Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4158892Z "path": "crates/spt/src/helpfmt.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4159408Z "line": 348 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4159770Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4160084Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4160404Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4160723Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4161029Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4161339Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4161677Z "id": "REQ-CLI-OUTPUT-MARKDOWN", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4172189Z "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-21T09:42:01.4178482Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4178862Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4179315Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4179644Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4179954Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4180300Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4180632Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4181024Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4181391Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4181710Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4182058Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4182430Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4182788Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4183168Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4183634Z "line": 141 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4183982Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4184301Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4184649Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4185087Z "line": 1376 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4185441Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4185759Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4186114Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4186544Z "line": 2145 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4186911Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4187398Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4187741Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4188269Z "line": 4368 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4188630Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4189012Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4189361Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4189800Z "line": 4466 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4190156Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4190476Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4190828Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4191260Z "line": 5257 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4191618Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4191933Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4192289Z "path": "crates/spt/src/helpfmt.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4192737Z "line": 39 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4193086Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4193410Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4193723Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4194036Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4194379Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4194747Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4195110Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4195768Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4256299Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4256839Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4257204Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4257569Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4258017Z "line": 10272 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4258399Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4258723Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4259190Z "path": "crates/spt/src/helpfmt.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4259651Z "line": 281 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4260006Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4260326Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4260694Z "path": "crates/spt/src/helpfmt.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4261156Z "line": 358 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4261513Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4261842Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4262244Z "path": "crates/spt/src/helpfmt.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4262696Z "line": 381 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4263058Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4263373Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4263735Z "path": "crates/spt/src/helpfmt.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4264184Z "line": 395 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4264537Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4264868Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4265176Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4265490Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4265796Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4266125Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4266450Z "id": "REQ-CONSENT-1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4268096Z "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-21T09:42:01.4269841Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4270211Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4270537Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4270857Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4271167Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4271501Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4271845Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4272232Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4272589Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4272913Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4273256Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4273627Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4273975Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4274346Z "path": "crates/spt-daemon/src/grants.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4274806Z "line": 27 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4275153Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4275471Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4275842Z "path": "crates/spt-daemon/src/grants.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4276298Z "line": 75 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4276647Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4277267Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4277635Z "path": "crates/spt-daemon/src/grants.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4278200Z "line": 98 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4278545Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4278855Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4279314Z "path": "crates/spt-store/src/grants.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4279771Z "line": 82 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4280120Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4280434Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4280790Z "path": "crates/spt-store/src/grants.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4281242Z "line": 109 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4281595Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4281909Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4282281Z "path": "crates/spt-store/src/grants.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4282730Z "line": 127 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4283088Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4283403Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4283768Z "path": "crates/spt-store/src/grants.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4284215Z "line": 142 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4284573Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4284897Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4285250Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4285699Z "line": 7048 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4286064Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4286378Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4286692Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4287007Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4287345Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4287722Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4288070Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4288390Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4288727Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4289559Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4289917Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4290294Z "path": "crates/spt-daemon/src/grants.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4290747Z "line": 334 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4291100Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4291427Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4291797Z "path": "crates/spt-daemon/src/grants.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4292259Z "line": 380 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4292612Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4292927Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4293300Z "path": "crates/spt-daemon/src/grants.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4293751Z "line": 391 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4294103Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4294418Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4294785Z "path": "crates/spt-store/src/grants.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4295229Z "line": 165 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4295583Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4295907Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4296264Z "path": "crates/spt-store/src/grants.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4296713Z "line": 184 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4297070Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4297389Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4297748Z "path": "crates/spt-store/src/grants.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4298196Z "line": 204 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4298554Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4298873Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4299330Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4299772Z "line": 8334 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4300134Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4300444Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4300763Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4301069Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4301374Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4301684Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4302011Z "id": "REQ-CONSENT-2", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4303540Z "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-21T09:42:01.4305083Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4305451Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4305904Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4306266Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4306575Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4307004Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4307349Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4307731Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4308094Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4308409Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4308752Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4309195Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4309553Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4309928Z "path": "crates/spt-daemon/src/grants.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4310375Z "line": 140 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4310728Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4311047Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4311409Z "path": "crates/spt-daemon/src/grants.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4311863Z "line": 165 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4312216Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4312529Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4312889Z "path": "crates/spt-daemon/src/grants.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4313346Z "line": 199 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4313698Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4314018Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4314386Z "path": "crates/spt-daemon/src/grants.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4314835Z "line": 241 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4315182Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4315502Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4315868Z "path": "crates/spt-daemon/src/grants.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4316306Z "line": 269 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4316650Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4316970Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4317333Z "path": "crates/spt-daemon/src/grants.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4317795Z "line": 300 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4318143Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4318462Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4318820Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4319354Z "line": 6839 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4319774Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4320094Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4320445Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4320868Z "line": 6897 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4321226Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4321550Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4321855Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4322160Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4322509Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4322898Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4323244Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4323563Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4323901Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4324277Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4324626Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4325009Z "path": "crates/spt-daemon/src/grants.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4325451Z "line": 419 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4325808Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4326123Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4326484Z "path": "crates/spt-daemon/src/grants.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4326963Z "line": 436 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4327316Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4327635Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4328006Z "path": "crates/spt-daemon/src/grants.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4328464Z "line": 472 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4328828Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4329215Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4329605Z "path": "crates/spt-daemon/src/grants.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4329772Z "line": 516 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4329919Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4330072Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4330257Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4330412Z "line": 9614 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4330567Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4330727Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4330920Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4331072Z "line": 9696 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4331222Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4331380Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4331656Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4331800Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4331947Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4332200Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4332358Z "id": "REQ-CONSENT-3", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4335325Z "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-21T09:42:01.4335496Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4335649Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4335811Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4335978Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4336136Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4336288Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4336449Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4336607Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4336768Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4336936Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4337087Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4337265Z "path": "CONTEXT.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4337427Z "line": 304 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4337584Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4337746Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4337899Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4338056Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4338214Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4338376Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4338524Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4338742Z "path": "crates/spt-daemon/src/linkhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4338897Z "line": 123 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4339116Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4339277Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4339493Z "path": "crates/spt-daemon/src/linkhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4339673Z "line": 162 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4339826Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4339988Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4340199Z "path": "crates/spt-daemon/src/linkhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4340361Z "line": 291 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4340518Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4340676Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4340884Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4341039Z "line": 574 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4341190Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4341344Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4341551Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4341723Z "line": 824 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4341873Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4342031Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4342211Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4342384Z "line": 6965 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4342540Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4342689Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4342846Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4342994Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4343151Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4343314Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4343471Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4343685Z "path": "crates/spt/tests/shell_actgate_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4343844Z "line": 16 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4343995Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4344151Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4344312Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4344463Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4344636Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4344798Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4344951Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4345156Z "path": "crates/spt-daemon/src/linkhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4345317Z "line": 1019 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4345481Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4345737Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4345942Z "path": "crates/spt-daemon/src/linkhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4346233Z "line": 1066 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4346381Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4346538Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4346744Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4346914Z "line": 1394 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4347076Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4347233Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4347386Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4347539Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4347691Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4347839Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4348030Z "id": "REQ-CONV-1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4350210Z "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-21T09:42:01.4350396Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4350553Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4350706Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4350864Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4351026Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4351163Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4351336Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4351493Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4351651Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4351798Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4351970Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4352130Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4352287Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4352505Z "path": "crates/spt-daemon/src/nethost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4352654Z "line": 988 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4352800Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4352949Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4353164Z "path": "crates/spt-daemon/src/pairhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4353316Z "line": 94 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4353464Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4353621Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4353827Z "path": "crates/spt-daemon/src/pairhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4353997Z "line": 345 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4354142Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4354293Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4354504Z "path": "crates/spt-daemon/src/pairhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4354655Z "line": 387 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4354812Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4354957Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4355168Z "path": "crates/spt-daemon/src/pairhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4355319Z "line": 472 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4355478Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4355634Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4355825Z "path": "crates/spt-daemon/src/pump/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4355982Z "line": 667 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4356135Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4356292Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4356503Z "path": "crates/spt-daemon/src/pump/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4356670Z "line": 693 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4356831Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4356985Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4357218Z "path": "crates/spt-net/src/net/endpoint.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4357385Z "line": 369 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4357545Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4357689Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4357893Z "path": "crates/spt-store/src/peeraddrs.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4358056Z "line": 19 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4358203Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4358361Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4358508Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4358666Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4358828Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4359043Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4359301Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4359491Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4359667Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4359919Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4360079Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4360285Z "path": "crates/spt-daemon/src/pump/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4360450Z "line": 1263 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4360600Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4360750Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4360961Z "path": "crates/spt-store/src/peeraddrs.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4361123Z "line": 108 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4361280Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4361433Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4361648Z "path": "crates/spt-store/src/peeraddrs.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4361815Z "line": 134 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4361967Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4362116Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4362311Z "path": "crates/spt-store/src/peeraddrs.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4362478Z "line": 144 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4362653Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4362795Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4362979Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4363128Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4363284Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4363433Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4363599Z "id": "REQ-CONV-2", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4365261Z "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-21T09:42:01.4365428Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4365583Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4365738Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4365889Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4366047Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4366209Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4366376Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4366542Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4366700Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4366857Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4367024Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4367181Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4367339Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4367550Z "path": "crates/spt-daemon/src/lifecycle.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4367701Z "line": 409 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4367860Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4368001Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4368225Z "path": "crates/spt-daemon/src/pump/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4368387Z "line": 119 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4368535Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4368692Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4368912Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4369184Z "line": 841 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4369345Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4369518Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4369731Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4369894Z "line": 852 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4370041Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4370194Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4370393Z "path": "crates/spt-daemon/src/resting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4370554Z "line": 334 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4370710Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4370859Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4371044Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4371216Z "line": 3074 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4371369Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4371521Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4371708Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4371879Z "line": 3090 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4372027Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4372179Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4372367Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4372638Z "line": 3170 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4372794Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4372943Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4373193Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4373356Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4373520Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4373688Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4373844Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4373988Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4374145Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4374308Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4374464Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4374675Z "path": "crates/spt-daemon/src/pump/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4374826Z "line": 889 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4374980Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4375132Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4375333Z "path": "crates/spt-daemon/src/pump/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4375495Z "line": 1014 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4375653Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4375798Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4376026Z "path": "crates/spt-daemon/src/pump/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4376178Z "line": 215 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4376336Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4376487Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4376646Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4376797Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4376945Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4377103Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4377269Z "id": "REQ-DAEMON-1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4377570Z "title": "One per-machine spt-daemon owning all per-machine state", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4377732Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4377890Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4378042Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4378196Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4378347Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4378492Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4378652Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4378809Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4379032Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4379181Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4379342Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4379510Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4379667Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4379825Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4380035Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4380215Z "line": 229 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4380369Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4380525Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4380727Z "path": "crates/spt-daemon/src/config.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4380882Z "line": 12 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4381040Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4381190Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4381400Z "path": "crates/spt-daemon/src/lifecycle.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4381561Z "line": 16 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4381710Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4381862Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4382063Z "path": "crates/spt-daemon/src/lifecycle.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4382229Z "line": 309 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4382382Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4382539Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4382749Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4382912Z "line": 24 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4383073Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4383222Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4383436Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4383594Z "line": 262 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4390357Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4390576Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4390823Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4391028Z "line": 279 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4391181Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4391334Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4391538Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4391697Z "line": 356 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4391850Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4392008Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4392222Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4392533Z "line": 670 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4392693Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4392947Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4393147Z "path": "crates/spt-daemon/src/relay.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4393309Z "line": 15 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4393458Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4393618Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4393811Z "path": "crates/spt-store/src/info.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4393976Z "line": 241 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4394116Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4394267Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4394467Z "path": "crates/spt/src/api/live.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4394622Z "line": 13 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4394784Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4394932Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4395137Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4395289Z "line": 382 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4395447Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4395604Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4395800Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4395961Z "line": 494 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4396124Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4396285Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4396439Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4396591Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4396759Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4396914Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4397062Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4397351Z "path": "crates/spt-daemon/tests/daemon_lifecycle_real_brain.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4397508Z "line": 2 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4397675Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4397827Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4398099Z "path": "crates/spt-daemon/tests/daemon_lifecycle_real_brain.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4398267Z "line": 16 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4398418Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4398566Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4398814Z "path": "crates/spt/tests/live_bind_firsthost_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4399057Z "line": 12 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4399206Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4399362Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4399583Z "path": "crates/spt/tests/live_firsthost_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4399743Z "line": 12 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4399882Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4400034Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4400264Z "path": "crates/spt/tests/livehost_bootrace_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4400415Z "line": 44 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4400574Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4400716Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4400869Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4401021Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4401174Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4401345Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4401494Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4401702Z "path": "crates/spt-daemon/src/config.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4401871Z "line": 285 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4402017Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4402164Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4402367Z "path": "crates/spt-daemon/src/config.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4402525Z "line": 293 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4402677Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4402830Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4403034Z "path": "crates/spt-daemon/src/config.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4403202Z "line": 309 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4403349Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4403497Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4403703Z "path": "crates/spt-daemon/src/config.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4403865Z "line": 317 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4404023Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4404174Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4404390Z "path": "crates/spt-daemon/src/lifecycle.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4404546Z "line": 659 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4404695Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4404984Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4405196Z "path": "crates/spt-daemon/src/lifecycle.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4405449Z "line": 729 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4405601Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4405760Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4405965Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4406130Z "line": 1211 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4406289Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4406445Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4406651Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4406817Z "line": 1248 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4406966Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4407113Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4407314Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4407483Z "line": 1271 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4407626Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4407777Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4407983Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4408144Z "line": 1300 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4408302Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4408454Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4408664Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4408812Z "line": 1348 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4409040Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4409189Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4409393Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4409579Z "line": 1391 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4409732Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4409885Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4410076Z "path": "crates/spt-daemon/src/relay.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4410237Z "line": 106 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4410384Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4410543Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4410742Z "path": "crates/spt-daemon/src/relay.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4410895Z "line": 132 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4411052Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4411195Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4411420Z "path": "crates/spt-store/src/info.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4411586Z "line": 530 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4411739Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4411892Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4412045Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4412200Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4412355Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4412510Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4412682Z "id": "REQ-DAEMON-2", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4412927Z "title": "Broker/brain split for seamless self-update", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4413095Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4413251Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4413409Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4413561Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4413710Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4413866Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4414020Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4414190Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4414354Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4414510Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4414706Z "path": "docs/TWO-HOST-RUNBOOK.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4414878Z "line": 250 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4415030Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4415169Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4415327Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4415482Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4415662Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4415818Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4415976Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4416171Z "path": "crates/spt-daemon/src/brain.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4416334Z "line": 23 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4416481Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4416634Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4416839Z "path": "crates/spt-daemon/src/brain.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4416996Z "line": 844 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4417154Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4417310Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4417512Z "path": "crates/spt-daemon/src/brain.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4417770Z "line": 869 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4417921Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4418082Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4418365Z "path": "crates/spt-daemon/src/brain.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4418524Z "line": 1105 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4418694Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4418843Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4419125Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4419286Z "line": 32 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4419440Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4419586Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4419796Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4419963Z "line": 1185 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4420102Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4420264Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4420459Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4420627Z "line": 1987 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4420769Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4420925Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4421122Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4421278Z "line": 2274 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4421427Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4421578Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4421775Z "path": "crates/spt-daemon/src/codec.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4421931Z "line": 11 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4422080Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4422227Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4422418Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4422576Z "line": 153 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4422728Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4422876Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4423076Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4423232Z "line": 343 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4423392Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4423540Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4423736Z "path": "crates/spt-daemon/src/msg.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4423888Z "line": 13 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4424046Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4424184Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4424398Z "path": "crates/spt-daemon/src/nethost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4424561Z "line": 27 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4424708Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4424861Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4425065Z "path": "crates/spt-daemon/src/nethost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4425233Z "line": 173 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4425385Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4425539Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4425743Z "path": "crates/spt-daemon/src/nethost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4425910Z "line": 682 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4426061Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4426208Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4426417Z "path": "crates/spt-daemon/src/nethost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4426584Z "line": 903 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4426736Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4426894Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4427090Z "path": "crates/spt-daemon/src/nethost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4427246Z "line": 1050 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4427399Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4427547Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4427758Z "path": "crates/spt-daemon/src/nethost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4427909Z "line": 1139 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4428058Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4428209Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4428406Z "path": "crates/spt-daemon/src/nethost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4428566Z "line": 1261 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4428723Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4428878Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4429159Z "path": "crates/spt-daemon/src/transport.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4429322Z "line": 10 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4429465Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4429618Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4429771Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4430037Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4430209Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4430366Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4430615Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4430824Z "path": "crates/spt-daemon/tests/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4430982Z "line": 17 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4431134Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4431292Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4431514Z "path": "crates/spt-daemon/tests/netbroker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4431672Z "line": 90 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4431829Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4431977Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4432197Z "path": "crates/spt-daemon/tests/netbroker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4432358Z "line": 110 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4432511Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4432663Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4432869Z "path": "crates/spt-daemon/tests/netbroker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4433026Z "line": 186 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4433180Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4433335Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4433546Z "path": "crates/spt-daemon/tests/netbroker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4433716Z "line": 309 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4433868Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4434014Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4434230Z "path": "crates/spt-daemon/tests/netstream.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4434386Z "line": 128 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4434535Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4434686Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4434887Z "path": "crates/spt/tests/brain_survive.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4435039Z "line": 59 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4435192Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4435345Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4435497Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4435654Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4435821Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4435984Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4436164Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4436357Z "path": "crates/spt-daemon/src/codec.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4436522Z "line": 62 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4436679Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4436834Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4437039Z "path": "crates/spt-daemon/src/codec.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4437205Z "line": 76 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4437359Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4437511Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4437707Z "path": "crates/spt-daemon/src/codec.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4437863Z "line": 88 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4438027Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4438178Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4438379Z "path": "crates/spt-daemon/src/effect.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4438541Z "line": 347 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4438685Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4438831Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4439097Z "path": "crates/spt-daemon/src/msg.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4439255Z "line": 873 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4439414Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4439567Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4439757Z "path": "crates/spt-daemon/src/msg.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4439916Z "line": 881 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4440067Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4440217Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4440420Z "path": "crates/spt-daemon/src/msg.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4440588Z "line": 898 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4440735Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4440889Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4441079Z "path": "crates/spt-daemon/src/msg.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4441246Z "line": 974 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4441394Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4441538Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4441757Z "path": "crates/spt-daemon/src/nethost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4441908Z "line": 1370 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4442064Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4442214Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4442408Z "path": "crates/spt-daemon/src/nethost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4442786Z "line": 1382 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4443052Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4443204Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4443416Z "path": "crates/spt-daemon/src/transport.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4443581Z "line": 110 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4443730Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4443881Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4444083Z "path": "crates/spt-daemon/tests/resume.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4444247Z "line": 145 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4444405Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4444551Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4444704Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4444851Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4445009Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4445156Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4445324Z "id": "REQ-DAEMON-3", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4445624Z "title": "Any api invocation auto-starts the daemon if absent", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4445800Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4445958Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4446110Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4446268Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4446415Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4446568Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4446729Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4446897Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4447058Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4447210Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4447361Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4447527Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4447685Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4447846Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4448056Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4448219Z "line": 14 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4448367Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4448515Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4448729Z "path": "crates/spt-daemon/src/endpoint.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4448896Z "line": 11 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4449125Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4449282Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4449479Z "path": "crates/spt/src/api/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4449639Z "line": 305 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4449791Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4449937Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4450123Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4450276Z "line": 1956 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4450428Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4450586Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4450762Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4450933Z "line": 4235 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4451082Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4451229Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4451406Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4451558Z "line": 4256 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4451716Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4451858Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4452012Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4452168Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4452341Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4452511Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4452654Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4452863Z "path": "crates/spt/tests/contract_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4453026Z "line": 49 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4453182Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4453336Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4453530Z "path": "crates/spt/tests/contract_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4453699Z "line": 487 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4453850Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4454009Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4454160Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4454319Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4454479Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4454644Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4454808Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4455007Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4455172Z "line": 1553 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4455321Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4455588Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4455768Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4456045Z "line": 10715 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4456204Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4456355Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4456513Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4456656Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4456814Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4456961Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4457133Z "id": "REQ-DAEMON-4", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4457347Z "title": "Honor every KNOWN-HAZARDS invariant", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4457515Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4457680Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4457833Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4457988Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4458145Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4458297Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4458456Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4458616Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4458784Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4458927Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4459184Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4459337Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4459499Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4459661Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4459875Z "path": "crates/spt-daemon/src/lifecycle.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4460039Z "line": 464 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4460190Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4460332Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4460540Z "path": "crates/spt-daemon/src/lifecycle.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4460697Z "line": 529 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4460850Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4460998Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4461207Z "path": "crates/spt-daemon/src/lifecycle.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4461361Z "line": 551 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4461512Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4461666Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4461813Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4461971Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4462123Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4462295Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4462447Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4462663Z "path": "crates/spt-daemon/tests/daemon_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4462833Z "line": 42 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4462982Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4463137Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4463286Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4463432Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4463596Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4463757Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4463911Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4464114Z "path": "crates/spt-daemon/src/config.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4464278Z "line": 428 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4464434Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4464593Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4464797Z "path": "crates/spt-daemon/src/lifecycle.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4464963Z "line": 957 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4465116Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4465264Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4465477Z "path": "crates/spt-daemon/src/lifecycle.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4465632Z "line": 1027 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4465795Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4465947Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4466163Z "path": "crates/spt-daemon/src/lifecycle.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4466328Z "line": 1057 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4466482Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4466633Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4466839Z "path": "crates/spt-daemon/src/lifecycle.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4467006Z "line": 1090 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4467154Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4467306Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4467460Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4467606Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4467761Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4467897Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4468071Z "id": "REQ-DAEMON-5", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4470164Z "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-21T09:42:01.4470531Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4470694Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4470839Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4470997Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4471147Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4471296Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4471471Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4471620Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4471777Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4471930Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4472096Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4472245Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4472420Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4472635Z "path": "crates/spt-daemon/src/pump/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4472802Z "line": 476 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4472955Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4473113Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4473326Z "path": "crates/spt-daemon/src/pump/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4473481Z "line": 769 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4473631Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4473778Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4473993Z "path": "crates/spt-daemon/src/pump/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4474146Z "line": 782 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4474284Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4474433Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4474632Z "path": "crates/spt-daemon/src/pump/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4474790Z "line": 800 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4474947Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4475095Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4475348Z "path": "crates/spt-daemon/src/pump/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4475496Z "line": 841 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4475653Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4475806Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4475957Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4476119Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4476293Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4476466Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4476617Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4476770Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4476936Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4477089Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4477241Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4477437Z "path": "crates/spt-daemon/src/pump/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4477589Z "line": 1189 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4477738Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4477885Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4478085Z "path": "crates/spt-daemon/src/pump/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4478254Z "line": 1213 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4478405Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4478559Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4478762Z "path": "crates/spt-daemon/src/pump/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4478919Z "line": 1239 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4479136Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4479294Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4479441Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4479595Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4479741Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4479891Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4480051Z "id": "REQ-DAEMON-6", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4482995Z "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-21T09:42:01.4483286Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4483435Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4483692Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4483853Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4484007Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4484168Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4484329Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4484497Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4484644Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4484792Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4484959Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4485111Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4485259Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4485469Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4485637Z "line": 495 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4485774Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4485932Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4486131Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4486290Z "line": 526 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4486450Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4486603Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4486815Z "path": "crates/spt-daemon/src/service.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4486978Z "line": 55 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4487134Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4487283Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4487487Z "path": "crates/spt-daemon/src/service.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4487650Z "line": 70 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4487792Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4487950Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4488136Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4488307Z "line": 2020 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4488465Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4488608Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4488789Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4489008Z "line": 2046 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4489162Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4489313Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4489465Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4489625Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4489787Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4489959Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4490102Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4490260Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4490417Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4490579Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4490741Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4490936Z "path": "crates/spt-daemon/src/service.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4491095Z "line": 288 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4491251Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4491404Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4491628Z "path": "crates/spt-daemon/src/service.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4491814Z "line": 299 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4491998Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4492182Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4492421Z "path": "crates/spt-daemon/src/service.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4492610Z "line": 325 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4492803Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4492983Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4493207Z "path": "crates/spt-daemon/src/service.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4493403Z "line": 351 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4493555Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4493699Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4493856Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4494014Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4494165Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4494324Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4494504Z "id": "REQ-DAEMON-7", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4496602Z "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-21T09:42:01.4496768Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4497029Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4497182Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4497441Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4497600Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4497761Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4497924Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4498085Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4498233Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4498395Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4498562Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4498720Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4498868Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4499140Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4499296Z "line": 545 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4499445Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4499593Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4499812Z "path": "crates/spt-daemon/src/deelevate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4499968Z "line": 610 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4500125Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4500266Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4500472Z "path": "crates/spt-daemon/src/service.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4500642Z "line": 89 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4500786Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4500933Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4501120Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4501282Z "line": 1957 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4501434Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4501587Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4501740Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4501887Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4502055Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4502217Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4502365Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4502520Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4502691Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4502851Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4503005Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4503219Z "path": "crates/spt-daemon/src/service.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4503377Z "line": 314 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4503534Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4503677Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4503883Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4504053Z "line": 8102 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4504207Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4504364Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4504512Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4504663Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4504813Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4504968Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4505137Z "id": "REQ-DAEMON-8", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4506604Z "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-21T09:42:01.4506791Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4506937Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4507096Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4507247Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4507406Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4507566Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4507738Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4507902Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4508045Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4508207Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4508370Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4511595Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4511808Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4512028Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4512196Z "line": 445 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4512351Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4512501Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4512719Z "path": "crates/spt-daemon/src/service.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4512883Z "line": 56 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4513028Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4513180Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4513331Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4513474Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4513803Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4513961Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4514208Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4514370Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4514533Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4514690Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4514838Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4515053Z "path": "crates/spt-daemon/src/service.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4515214Z "line": 288 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4515368Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4515524Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4515726Z "path": "crates/spt-daemon/src/service.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4515890Z "line": 325 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4516048Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4516195Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4516344Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4516497Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4516649Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4516797Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4516968Z "id": "REQ-DAEMON-9", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4520556Z "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-21T09:42:01.4520746Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4520909Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4521073Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4521226Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4521390Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4521535Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4521700Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4521859Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4522011Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4522169Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4522321Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4522493Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4522641Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4522869Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4523022Z "line": 276 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4523184Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4523347Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4523541Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4523712Z "line": 1236 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4523858Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4524015Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4524215Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4524373Z "line": 197 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4524530Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4524674Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4524873Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4525027Z "line": 344 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4525179Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4525327Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4525536Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4525704Z "line": 381 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4525855Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4526010Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4526199Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4526371Z "line": 2075 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4526527Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4526680Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4526832Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4526981Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4527151Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4527314Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4527471Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4527719Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4527882Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4528039Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4528268Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4528477Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4528634Z "line": 1158 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4528785Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4528928Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4529204Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4529365Z "line": 10580 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4529514Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4529670Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4529815Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4529970Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4530120Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4530271Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4530429Z "id": "REQ-DOCS-1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4530764Z "title": "Dual-audience docs (human + AI dev-agent), markdown once / two depths", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4530934Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4531088Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4531249Z "impl" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4531398Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4531554Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4531705Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4531870Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4532037Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4532185Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4532381Z "path": "docs-site/src/index.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4532547Z "line": 50 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4532701Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4532843Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4532996Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4533148Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4533311Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4533477Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4533626Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4533835Z "path": ".github/workflows/docs-publish.yml", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4533993Z "line": 12 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4534148Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4534301Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4534498Z "path": "crates/xtask/src/main.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4534662Z "line": 14 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4534827Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4534981Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4535128Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4535282Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4535452Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4535615Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4535772Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4535926Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4536091Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4536255Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4536411Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4536570Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4536721Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4536870Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4537030Z "id": "REQ-DOCS-2", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4537302Z "title": "Sub-10-minute runnable killer quickstart per audience", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4537474Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4537631Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4537794Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4537946Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4538103Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4538255Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4538408Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4538574Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4538718Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4539101Z "path": "docs-site/src/harness-contract/integration-checklist.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4539256Z "line": 3 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4539413Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4539563Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4539807Z "path": "docs-site/src/quickstart/adapter.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4539968Z "line": 3 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4540117Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4540269Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4540479Z "path": "docs-site/src/quickstart/messaging.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4540646Z "line": 3 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4540794Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4541052Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4541203Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4541357Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4541518Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4541770Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4541930Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4542076Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4542247Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4542411Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4542564Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4542774Z "path": "crates/spt/tests/quickstart_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4542937Z "line": 14 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4543093Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4543252Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4543394Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4543546Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4543704Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4543861Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4544009Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4544162Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4544314Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4544462Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4544633Z "id": "REQ-DOCS-3", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4544955Z "title": "Diátaxis structure; one canonical way to do X", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4545126Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4545275Z "doc" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4545421Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4545579Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4545726Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4545899Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4546055Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4546209Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4546409Z "path": "docs-site/src/index.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4546575Z "line": 42 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4546728Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4546885Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4547043Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4547195Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4547368Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4547533Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4547685Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4547834Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4548004Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4548173Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4548329Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4548487Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4548653Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4548820Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4549017Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4549169Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4549327Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4549473Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4549642Z "id": "REQ-DOCS-4", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4549968Z "title": "Agent-consumable layer (llms.txt, manifest schema, MCP, CLI help)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4550142Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4550290Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4550452Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4550610Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4550758Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4550915Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4551054Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4551226Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4551392Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4551550Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4551744Z "path": "docs/DOCS-STRATEGY.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4551903Z "line": 35 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4552059Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4552203Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4552364Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4552518Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4552697Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4552864Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4553014Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4553239Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4553386Z "line": 746 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4553544Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4553691Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4553887Z "path": "crates/xtask/src/main.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4554058Z "line": 15 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4554211Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4554364Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4554517Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4554804Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4554965Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4555221Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4555369Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4555529Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4555705Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4555867Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4556024Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4556239Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4556411Z "line": 1682 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4556568Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4556721Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4556882Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4557032Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4557188Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4557337Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4557508Z "id": "REQ-DOCS-5", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4557841Z "title": "Anti-drift: rustdoc/schema/exports/CLI-help generated + CI-checked", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4558000Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4558164Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4558312Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4558470Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4558623Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4558784Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4559037Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4559190Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4559343Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4559499Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4559667Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4559829Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4559982Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4560202Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4560362Z "line": 747 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4560509Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4560665Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4560860Z "path": "crates/xtask/src/main.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4561013Z "line": 113 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4561170Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4561318Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4561476Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4561623Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4561786Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4561952Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4562105Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4562295Z "path": ".github/workflows/ci.yml", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4562453Z "line": 206 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4562610Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4562768Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4562977Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4563136Z "line": 1719 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4563281Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4563434Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4563589Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4563741Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4563912Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4564067Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4564209Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4564362Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4564519Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4564672Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4564843Z "id": "REQ-DOCS-6", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4565373Z "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-21T09:42:01.4565539Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4565702Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4565853Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4566015Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4566174Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4566332Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4566489Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4566652Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4566823Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4566976Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4567210Z "path": "docs-site/src/quickstart/messaging.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4567376Z "line": 4 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4567514Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4567676Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4567829Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4567991Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4568154Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4568425Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4568583Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4568873Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4569135Z "line": 5240 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4569293Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4569450Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4569588Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4569745Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4569922Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4570074Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4570246Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4570457Z "path": "crates/spt/tests/quickstart_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4570622Z "line": 39 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4570777Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4570936Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4571094Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4571249Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4571420Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4571578Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4571740Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4571916Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4572074Z "line": 10742 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4572235Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4572389Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4572541Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4572689Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4572851Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4573000Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4573170Z "id": "REQ-ELEVATE-1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4577828Z "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-21T09:42:01.4578017Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4578171Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4578322Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4578472Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4578623Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4578772Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4578923Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4579176Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4579341Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4579491Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4579661Z "path": "CONTEXT.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4579829Z "line": 687 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4579985Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4580143Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4580310Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4580463Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4580639Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4580796Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4580954Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4581134Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4581302Z "line": 3572 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4581459Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4581610Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4581804Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4581966Z "line": 3617 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4582114Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4582271Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4582448Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4582611Z "line": 3679 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4582757Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4582911Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4583220Z "path": "crates/spt/src/elevation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4583392Z "line": 92 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4583631Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4583787Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4583988Z "path": "crates/spt/src/elevation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4584146Z "line": 148 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4584298Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4584444Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4584601Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4584761Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4584929Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4585095Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4585249Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4585414Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4585582Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4585749Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4585901Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4586097Z "path": "crates/spt/src/elevation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4586268Z "line": 442 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4586417Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4586587Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4586784Z "path": "crates/spt/src/elevation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4586954Z "line": 460 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4587116Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4587266Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4587419Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4587571Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4587720Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4587877Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4588078Z "id": "REQ-ENDPOINT-LIST-MERGE-LOCAL", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4590784Z "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-21T09:42:01.4590971Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4591127Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4591286Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4591437Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4591596Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4591752Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4591911Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4592076Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4592247Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4592398Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4592564Z "path": "CONTEXT.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4592721Z "line": 711 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4592875Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4593026Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4593176Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4593336Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4593495Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4593670Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4593819Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4594009Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4594167Z "line": 1721 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4594324Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4594482Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4594667Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4594830Z "line": 3125 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4594985Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4595142Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4595321Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4595499Z "line": 3134 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4595670Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4595823Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4595979Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4596133Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4596304Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4596466Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4596614Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4596767Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4597044Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4597206Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4597387Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4597662Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4597826Z "line": 7950 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4597974Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4598132Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4598309Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4598479Z "line": 7991 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4598628Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4598780Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4598938Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4599142Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4599301Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4599443Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4599630Z "id": "REQ-ENDPOINT-PURGE", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4606529Z "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-21T09:42:01.4606731Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4606888Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4607045Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4607198Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4607360Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4607513Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4607670Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4607823Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4607990Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4608136Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4608293Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4608472Z "path": "CONTEXT.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4608650Z "line": 163 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4608806Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4609049Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4609203Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4609359Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4609532Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4609693Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4609847Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4610060Z "path": "crates/spt-store/src/visibility.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4610218Z "line": 105 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4610370Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4610514Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4610710Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4610876Z "line": 7219 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4611031Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4611195Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4611346Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4611495Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4611661Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4611819Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4611976Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4612157Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4612453Z "line": 7384 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4612605Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4612768Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4613002Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4613163Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4613339Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4613498Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4613646Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4613832Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4613990Z "line": 7355 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4614142Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4614296Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4614452Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4614601Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4614753Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4614906Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4615100Z "id": "REQ-ENDPOINT-STOP-OFFLINE", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4617023Z "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-21T09:42:01.4617215Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4617367Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4617516Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4617667Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4617807Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4617963Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4618146Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4618296Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4618446Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4618592Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4618753Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4618913Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4619153Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4619347Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4619510Z "line": 3165 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4619657Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4619810Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4619966Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4620120Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4620296Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4620468Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4620620Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4620773Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4620935Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4621102Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4621240Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4621426Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4621592Z "line": 7331 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4621741Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4621897Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4622051Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4622197Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4622351Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4622502Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4622675Z "id": "REQ-EP-1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4622904Z "title": "Day-one endpoint types; open type system", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4623085Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4623243Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4623398Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4623553Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4623718Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4623870Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4624040Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4624207Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4624355Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4624517Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4624684Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4624856Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4625012Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4625228Z "path": "crates/spt-proto/src/endpoint.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4625398Z "line": 77 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4625547Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4625699Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4625909Z "path": "crates/spt-proto/src/endpoint.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4626076Z "line": 94 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4626333Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4626487Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4626647Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4626795Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4627060Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4627227Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4627374Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4627532Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4627684Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4627847Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4627994Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4628208Z "path": "crates/spt-proto/src/endpoint.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4628362Z "line": 161 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4628523Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4628682Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4628890Z "path": "crates/spt-proto/src/endpoint.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4629124Z "line": 178 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4629275Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4629464Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4629607Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4629770Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4629912Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4630056Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4630226Z "id": "REQ-EP-2", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4630508Z "title": "Agent endpoints vs Shells distinction in the type model", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4630680Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4630828Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4630985Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4631147Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4631300Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4631457Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4631625Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4631786Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4631944Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4632095Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4632272Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4632433Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4632592Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4632796Z "path": "crates/spt-proto/src/endpoint.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4632968Z "line": 114 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4633120Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4633269Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4633489Z "path": "crates/spt-proto/src/endpoint.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4633650Z "line": 131 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4633808Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4633954Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4634170Z "path": "crates/spt-proto/src/endpoint.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4634325Z "line": 138 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4634483Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4634633Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4634786Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4634943Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4635115Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4635277Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4635430Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4635582Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4635754Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4635920Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4636083Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4636283Z "path": "crates/spt-proto/src/endpoint.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4636450Z "line": 190 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4636607Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4636761Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4636971Z "path": "crates/spt-proto/src/endpoint.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4637122Z "line": 208 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4637278Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4637421Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4637643Z "path": "crates/spt-proto/src/endpoint.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4637787Z "line": 221 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4637944Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4638102Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4638254Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4638407Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4638554Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4638702Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4638869Z "id": "REQ-EP-3", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4639256Z "title": "Messaging payloads carry typed operation commands + file blobs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4639422Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4639576Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4639840Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4639987Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4643002Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4643327Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4643504Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4643676Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4643824Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4643975Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4644134Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4644300Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4644453Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4644702Z "path": "crates/spt-proto/src/payload.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4644895Z "line": 31 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4645047Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4645198Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4645413Z "path": "crates/spt-proto/src/payload.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4645574Z "line": 49 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4645728Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4645884Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4646047Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4646203Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4646376Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4646528Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4646691Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4646838Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4647015Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4647177Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4647325Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4647531Z "path": "crates/spt-proto/src/payload.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4647687Z "line": 156 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4647843Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4647985Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4648185Z "path": "crates/spt-proto/src/payload.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4648356Z "line": 164 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4648509Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4648667Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4648862Z "path": "crates/spt-proto/src/payload.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4649119Z "line": 177 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4649267Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4649424Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4649633Z "path": "crates/spt-proto/src/payload.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4649783Z "line": 200 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4649929Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4650073Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4650272Z "path": "crates/spt-proto/src/payload.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4650443Z "line": 216 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4650594Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4650737Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4650942Z "path": "crates/spt-proto/src/payload.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4651110Z "line": 233 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4651261Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4651415Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4651567Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4651720Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4651862Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4652015Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4652182Z "id": "REQ-EP-4", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4652435Z "title": "PresenceChannel broker endpoint (seam day-one)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4652611Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4652764Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4652921Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4653074Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4653234Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4653392Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4653554Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4653712Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4653859Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4654022Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4654188Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4654350Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4654498Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4654703Z "path": "crates/spt-daemon/src/brain.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4654870Z "line": 764 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4655023Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4655180Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4655389Z "path": "crates/spt-daemon/src/brain.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4655546Z "line": 1127 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4655815Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4655969Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4656182Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4656468Z "line": 2310 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4656622Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4656783Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4656979Z "path": "crates/spt-daemon/src/msg.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4657136Z "line": 118 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4657289Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4657437Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4657637Z "path": "crates/spt-daemon/src/msg.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4657800Z "line": 699 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4657951Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4658105Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4658299Z "path": "crates/spt-daemon/src/msg.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4658456Z "line": 836 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4658611Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4658769Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4659054Z "path": "crates/spt-daemon/src/nethost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4659222Z "line": 321 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4659379Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4659532Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4659737Z "path": "crates/spt-daemon/src/nethost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4659903Z "line": 508 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4660066Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4660213Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4660419Z "path": "crates/spt-daemon/src/nethost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4660580Z "line": 1334 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4660729Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4660880Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4661032Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4661182Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4661349Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4661506Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4661660Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4661812Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4661975Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4662136Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4662289Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4662488Z "path": "crates/spt-daemon/src/msg.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4662648Z "line": 927 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4662799Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4662953Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4663195Z "path": "crates/spt-daemon/tests/presence.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4663357Z "line": 76 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4663500Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4663653Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4663866Z "path": "crates/spt-daemon/tests/presence.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4664028Z "line": 147 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4664176Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4664320Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4664466Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4664624Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4664776Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4664925Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4665077Z "id": "REQ-EP-5", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4666144Z "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-21T09:42:01.4666323Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4666481Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4666642Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4666796Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4666952Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4667106Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4667262Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4667431Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4667596Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4667750Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4667892Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4668060Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4668226Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4668370Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4668602Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4668760Z "line": 367 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4669082Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4669232Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4669444Z "path": "crates/spt-daemon/src/shelldisc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4669692Z "line": 18 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4669839Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4669997Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4670196Z "path": "crates/spt-daemon/src/shelldisc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4670359Z "line": 63 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4670511Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4670674Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4670879Z "path": "crates/spt-daemon/src/shelldisc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4671045Z "line": 92 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4671194Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4671346Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4671559Z "path": "crates/spt-daemon/src/shelldisc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4671714Z "line": 167 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4671876Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4672015Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4672215Z "path": "crates/spt-daemon/src/shelldisc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4672372Z "line": 179 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4672530Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4672687Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4672893Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4673049Z "line": 114 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4673198Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4673345Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4673555Z "path": "crates/spt-store/src/shellinfo.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4673702Z "line": 22 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4673861Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4674012Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4674218Z "path": "crates/spt-store/src/shellinfo.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4674378Z "line": 145 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4674532Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4674688Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4674890Z "path": "crates/spt-store/src/shellinfo.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4675046Z "line": 174 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4675204Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4675361Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4675557Z "path": "crates/spt-store/src/shellinfo.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4675724Z "line": 196 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4675876Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4676025Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4676229Z "path": "crates/spt-store/src/shellinfo.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4676392Z "line": 221 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4676581Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4676733Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4676930Z "path": "crates/spt-store/src/shellinfo.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4677094Z "line": 247 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4677245Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4677399Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4677608Z "path": "crates/spt-store/src/shellinfo.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4677771Z "line": 270 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4677923Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4678071Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4678291Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4678447Z "line": 104 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4678601Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4678752Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4679015Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4679187Z "line": 6068 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4679334Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4679490Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4679670Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4679836Z "line": 6202 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4679980Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4680131Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4680318Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4680470Z "line": 6368 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4680628Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4680770Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4680957Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4681114Z "line": 6896 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4681381Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4681530Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4681682Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4681925Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4682090Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4682265Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4682407Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4682627Z "path": "crates/spt/tests/notify_shell_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4682795Z "line": 16 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4682951Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4683109Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4683304Z "path": "crates/spt/tests/shell_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4683467Z "line": 15 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4683614Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4683768Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4683929Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4684077Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4684248Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4684402Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4684559Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4684769Z "path": "crates/spt-daemon/src/shelldisc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4684934Z "line": 246 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4685082Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4685243Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4685455Z "path": "crates/spt-daemon/src/shelldisc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4685601Z "line": 306 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4685754Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4685907Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4686107Z "path": "crates/spt-daemon/src/shelldisc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4686270Z "line": 363 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4686416Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4686570Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4686774Z "path": "crates/spt-store/src/shellinfo.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4686943Z "line": 286 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4687093Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4687260Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4687472Z "path": "crates/spt-store/src/shellinfo.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4687630Z "line": 338 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4687786Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4687935Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4688153Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4688321Z "line": 783 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4688468Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4688621Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4688807Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4689060Z "line": 8751 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4689214Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4689369Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4689575Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4689733Z "line": 8904 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4689885Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4690031Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4690221Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4690372Z "line": 9493 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4690516Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4690668Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4690854Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4691020Z "line": 9609 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4691164Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4691321Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4691474Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4691627Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4691780Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4691927Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4692086Z "id": "REQ-EP-6", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4694323Z "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-21T09:42:01.4694499Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4694657Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4694915Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4695070Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4695224Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4695479Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4695629Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4695803Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4695967Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4696118Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4696291Z "path": "CONTEXT.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4696442Z "line": 227 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4696591Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4696738Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4696897Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4697058Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4697221Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4697382Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4697536Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4697748Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4697900Z "line": 212 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4698046Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4698204Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4698351Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4698510Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4698675Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4698843Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4699068Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4699286Z "path": "crates/spt/tests/gateway_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4699444Z "line": 18 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4699596Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4699755Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4699897Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4700065Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4700231Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4700403Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4700558Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4700772Z "path": "crates/spt-daemon/src/shellhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4700928Z "line": 556 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4701071Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4701242Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4701444Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4701610Z "line": 904 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4701768Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4701920Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4702086Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4702239Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4702396Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4702549Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4702711Z "id": "REQ-EP-7", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4705170Z "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-21T09:42:01.4705340Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4705508Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4705674Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4705823Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4705978Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4706136Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4706298Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4706460Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4706617Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4706775Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4706946Z "path": "CONTEXT.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4707104Z "line": 490 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4707256Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4707400Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4707546Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4707705Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4707871Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4708034Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4708195Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4708394Z "path": "crates/spt-daemon/src/sync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4708554Z "line": 505 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4708702Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4708860Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4709250Z "path": "crates/spt-live/src/resume.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4709408Z "line": 87 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4709671Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4709818Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4710047Z "path": "crates/spt-store/src/contextstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4710194Z "line": 81 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4710343Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4710499Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4710710Z "path": "crates/spt-store/src/contextstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4710872Z "line": 166 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4711020Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4711175Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4711360Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4711526Z "line": 1645 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4711689Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4711836Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4711994Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4712146Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4712323Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4712475Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4712623Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4712771Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4712933Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4713105Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4713253Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4713459Z "path": "crates/spt-daemon/src/sync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4713623Z "line": 623 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4713781Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4713931Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4714117Z "path": "crates/spt-live/src/ingest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4714283Z "line": 212 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4714436Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4714594Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4714776Z "path": "crates/spt-live/src/resume.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4714946Z "line": 307 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4715105Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4715252Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4715444Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4715604Z "line": 7724 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4715768Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4715919Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4716101Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4716267Z "line": 7751 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4716416Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4716567Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4716720Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4716872Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4717020Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4717167Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4717331Z "id": "REQ-FRONT-1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4717616Z "title": "Day-one launcher/manager frontend (list/launch/attach/init)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4717787Z "requiredStages": [], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4717945Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4718102Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4718255Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4718431Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4718579Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4718736Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4718902Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4719138Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4719296Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4719457Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4719625Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4719791Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4719940Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4720092Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4720255Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4720421Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4720574Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4720726Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4720879Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4721032Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4721223Z "id": "REQ-HAZARD-ATTACH-WEDGE", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4729039Z "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-21T09:42:01.4729453Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4729608Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4729755Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4729914Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4730065Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4730223Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4730394Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4730538Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4730699Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4730867Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4731029Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4731176Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4731333Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4731501Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4731663Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4731816Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4732031Z "path": "crates/spt/tests/attach_wedge_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4732201Z "line": 300 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4732353Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4732513Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4732661Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4732814Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4732980Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4733138Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4733290Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4733443Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4733586Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4733739Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4733925Z "id": "REQ-HAZARD-BIND-CWD-UNSET", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4737701Z "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-21T09:42:01.4737878Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4738030Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4738183Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4738340Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4738570Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4738727Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4738874Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4739217Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4739381Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4739541Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4739700Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4739861Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4740022Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4740182Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4740383Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4740545Z "line": 257 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4740707Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4740854Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4741023Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4741173Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4741347Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4741512Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4741657Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4741894Z "path": "crates/spt/tests/bind_cwd_project_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4742051Z "line": 93 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4742209Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4742357Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4742505Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4742667Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4742832Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4742994Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4743149Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4743346Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4743507Z "line": 802 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4743660Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4743821Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4744003Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4744161Z "line": 824 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4744308Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4744470Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4744670Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4744829Z "line": 855 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4744990Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4745149Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4745300Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4745451Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4745612Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4745763Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4745974Z "id": "REQ-HAZARD-BRAIN-RESPAWN-PATH", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4749712Z "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-21T09:42:01.4749887Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4750036Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4750197Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4750351Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4750497Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4750659Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4750819Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4750972Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4751143Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4751305Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4751457Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4751653Z "path": "docs/KNOWN-HAZARDS.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4751819Z "line": 333 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4751968Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4752125Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4752273Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4752425Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4752588Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4752745Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4753007Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4753232Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4753478Z "line": 494 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4753628Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4753781Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4753995Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4754163Z "line": 499 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4754320Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4754474Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4754677Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4754835Z "line": 874 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4754997Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4755145Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4755350Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4755512Z "line": 915 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4755660Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4755813Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4756016Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4756186Z "line": 926 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4756343Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4756496Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4756711Z "path": "crates/spt-daemon/src/relcache.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4756867Z "line": 358 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4757016Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4757168Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4757327Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4757473Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4757641Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4757802Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4757956Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4758188Z "path": "crates/spt/tests/brain_respawn_rename.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4758351Z "line": 30 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4758508Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4758666Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4758821Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4759033Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4759203Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4759371Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4759518Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4759733Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4759890Z "line": 1493 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4760048Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4760201Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4760405Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4760573Z "line": 1518 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4760719Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4760868Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4761071Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4761229Z "line": 1535 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4761384Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4761537Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4761736Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4761899Z "line": 1578 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4762041Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4762185Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4762337Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4762496Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4762646Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4762801Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4763033Z "id": "REQ-HAZARD-BRAIN-RESTART-LIFECYCLE-REHYDRATE", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4766884Z "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-21T09:42:01.4767285Z "requiredStages": [], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4767451Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4767609Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4767776Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4767938Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4768100Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4768253Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4768420Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4768592Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4768734Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4768893Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4769131Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4769292Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4769448Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4769607Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4769768Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4769931Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4770078Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4770236Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4770393Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4770546Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4770756Z "id": "REQ-HAZARD-BRAIN-RESTART-PSYCHE-DUP", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4776299Z "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-21T09:42:01.4776495Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4776646Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4776805Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4776956Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4777107Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4777269Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4777415Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4777584Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4777739Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4777893Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4778040Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4778217Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4778383Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4778522Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4778742Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4778904Z "line": 570 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4779138Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4779285Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4779509Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4779662Z "line": 594 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4779805Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4779960Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4780157Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4780328Z "line": 620 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4780486Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4780633Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4780843Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4780991Z "line": 679 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4781253Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4784444Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4784717Z "path": "crates/spt-store/src/proc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4785030Z "line": 89 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4785178Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4785324Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4785534Z "path": "crates/spt-store/src/proc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4785699Z "line": 134 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4785849Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4786004Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4786168Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4786319Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4786497Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4786658Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4786817Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4787074Z "path": "crates/spt/tests/brain_restart_psyche_dup_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4787235Z "line": 20 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4787394Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4787549Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4787711Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4787866Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4788038Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4788200Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4788357Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4788576Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4788740Z "line": 1047 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4788891Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4789115Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4789326Z "path": "crates/spt-store/src/proc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4789492Z "line": 445 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4789651Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4789797Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4789946Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4790107Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4790256Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4790412Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4790626Z "id": "REQ-HAZARD-BROKER-PROCESS-ISOLATION", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4794453Z "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-21T09:42:01.4794642Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4794791Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4794948Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4795101Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4795257Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4795412Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4795571Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4795719Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4795893Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4796060Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4796218Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4796399Z "path": "docs/KNOWN-HAZARDS.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4796565Z "line": 302 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4796723Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4796880Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4797038Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4797185Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4797358Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4797519Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4797677Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4797891Z "path": "crates/spt-daemon/src/applyhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4798059Z "line": 108 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4798219Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4798366Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4798574Z "path": "crates/spt-daemon/src/brain.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4798733Z "line": 843 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4799080Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4799233Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4799437Z "path": "crates/spt-daemon/src/brain.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4799699Z "line": 1043 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4799847Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4799999Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4800211Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4800372Z "line": 23 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4800521Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4800681Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4800893Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4801048Z "line": 113 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4801201Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4801353Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4801568Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4801734Z "line": 158 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4801887Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4802044Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4802259Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4802422Z "line": 218 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4802574Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4802727Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4802931Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4803095Z "line": 261 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4803260Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4803402Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4803615Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4803767Z "line": 275 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4803920Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4804078Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4804282Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4804445Z "line": 320 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4804596Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4804754Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4804964Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4805121Z "line": 347 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4805279Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4805431Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4805652Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4805812Z "line": 359 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4805972Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4806122Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4806326Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4806486Z "line": 373 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4806634Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4806782Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4806988Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4807153Z "line": 400 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4807312Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4807464Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4807669Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4807831Z "line": 643 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4807989Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4808136Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4808351Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4808510Z "line": 989 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4808651Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4808807Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4809091Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4809259Z "line": 310 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4809425Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4809583Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4809783Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4809936Z "line": 1226 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4810098Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4810254Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4810456Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4810618Z "line": 1298 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4810761Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4810912Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4811105Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4811386Z "line": 1310 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4811537Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4811848Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4812051Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4812218Z "line": 2016 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4812377Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4812515Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4812720Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4812876Z "line": 188 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4813030Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4813191Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4813383Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4813539Z "line": 265 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4813684Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4813848Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4814038Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4814207Z "line": 276 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4814357Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4814513Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4814714Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4814875Z "line": 329 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4815029Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4815180Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4815386Z "path": "crates/spt-daemon/src/deadline.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4815548Z "line": 56 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4815691Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4815849Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4816049Z "path": "crates/spt-daemon/src/deadline.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4816212Z "line": 188 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4816363Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4816546Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4816762Z "path": "crates/spt-daemon/src/endpoint.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4816924Z "line": 82 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4817084Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4817233Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4817461Z "path": "crates/spt-daemon/src/lifecycle.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4817619Z "line": 308 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4817786Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4817934Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4818135Z "path": "crates/spt-daemon/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4818305Z "line": 424 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4818464Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4818625Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4818812Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4819089Z "line": 2006 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4819245Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4819391Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4819556Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4819704Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4819881Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4820043Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4820210Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4820429Z "path": "crates/spt/tests/brain_survive.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4820590Z "line": 57 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4820753Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4820910Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4821116Z "path": "crates/spt/tests/n1_pairing.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4821263Z "line": 41 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4821407Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4821559Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4821708Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4821855Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4822023Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4822187Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4822341Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4822554Z "path": "crates/spt-daemon/src/applyhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4822702Z "line": 532 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4822864Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4823012Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4823212Z "path": "crates/spt-daemon/src/applyhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4823384Z "line": 757 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4823537Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4823698Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4823910Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4824181Z "line": 1067 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4824333Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4824570Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4824777Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4824946Z "line": 1101 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4825097Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4825255Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4825465Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4825627Z "line": 1143 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4825775Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4825937Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4826147Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4826308Z "line": 1215 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4826462Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4826623Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4826838Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4827000Z "line": 1228 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4827163Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4827308Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4827503Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4827668Z "line": 1251 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4827817Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4827973Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4828170Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4828337Z "line": 1277 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4828485Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4828637Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4828837Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4829071Z "line": 1291 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4829228Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4829372Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4829576Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4829743Z "line": 1315 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4829899Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4830042Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4830254Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4830413Z "line": 1447 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4830574Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4830727Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4830933Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4831094Z "line": 1623 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4831252Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4831409Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4831624Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4831780Z "line": 1678 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4831934Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4832090Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4832305Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4832473Z "line": 1724 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4832620Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4832771Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4832982Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4833138Z "line": 1769 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4833297Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4833453Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4833663Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4833807Z "line": 1813 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4833969Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4834126Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4834330Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4834489Z "line": 1855 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4834631Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4834785Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4834983Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4835150Z "line": 2369 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4835305Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4835453Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4835667Z "path": "crates/spt-daemon/src/deadline.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4835824Z "line": 217 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4835981Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4836234Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4836435Z "path": "crates/spt-daemon/src/deadline.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4836688Z "line": 233 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4836836Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4836989Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4837183Z "path": "crates/spt-daemon/src/deadline.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4837347Z "line": 254 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4837493Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4837647Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4837845Z "path": "crates/spt-daemon/src/deadline.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4837998Z "line": 265 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4838157Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4838310Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4838515Z "path": "crates/spt-daemon/src/deadline.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4838678Z "line": 278 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4838829Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4839045Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4839245Z "path": "crates/spt-daemon/src/deadline.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4839411Z "line": 289 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4839565Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4839726Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4839928Z "path": "crates/spt-daemon/src/deadline.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4840089Z "line": 301 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4840247Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4840403Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4840611Z "path": "crates/spt-daemon/src/deadline.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4840766Z "line": 312 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4840920Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4841076Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4841283Z "path": "crates/spt-daemon/src/deadline.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4841449Z "line": 323 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4841597Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4841749Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4841959Z "path": "crates/spt-daemon/src/deadline.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4842122Z "line": 332 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4842283Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4842442Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4842650Z "path": "crates/spt-daemon/src/deadline.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4842809Z "line": 342 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4842956Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4843110Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4843307Z "path": "crates/spt-daemon/src/deadline.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4843471Z "line": 358 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4843622Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4843785Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4843984Z "path": "crates/spt-daemon/src/lifecycle.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4844152Z "line": 758 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4844299Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4844462Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4844677Z "path": "crates/spt-daemon/src/lifecycle.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4844833Z "line": 794 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4844987Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4845138Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4845345Z "path": "crates/spt-daemon/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4845504Z "line": 966 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4845662Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4845826Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4846033Z "path": "crates/spt-daemon/tests/resume.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4846198Z "line": 145 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4846352Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4846493Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4846690Z "path": "crates/spt-daemon/tests/resume.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4846842Z "line": 224 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4846995Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4847137Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4847348Z "path": "crates/spt-daemon/tests/resume.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4847510Z "line": 293 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4847672Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4847834Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4848125Z "path": "crates/spt/tests/brain_split.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4848900Z "line": 17 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4849529Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4849853Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4850224Z "path": "crates/spt/tests/brain_split.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4850784Z "line": 104 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4851148Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4851461Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4851776Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4852109Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4852429Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4852725Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4853077Z "id": "REQ-HAZARD-BROKER-QUIC-DEADLINE", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4857884Z "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-21T09:42:01.4862637Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4863013Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4863332Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4863670Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4863999Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4864333Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4864662Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4865000Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4865376Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4865826Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4866183Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4866549Z "path": "docs/KNOWN-HAZARDS.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4867003Z "line": 388 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4867362Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4867720Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4868035Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4868349Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4868694Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4869140Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4869525Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4869895Z "path": "crates/spt-daemon/src/nethost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4870359Z "line": 823 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4870720Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4871025Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4871392Z "path": "crates/spt-daemon/src/nethost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4871846Z "line": 846 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4872202Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4872524Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4872839Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4873144Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4873488Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4873860Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4874222Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4874612Z "path": "crates/spt-daemon/tests/netbroker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4875093Z "line": 228 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4875442Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4875752Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4876123Z "path": "crates/spt-daemon/tests/pump.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4876585Z "line": 468 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4876934Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4877252Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4877550Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4877865Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4878241Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4878619Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4879042Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4879419Z "path": "crates/spt-daemon/src/nethost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4879883Z "line": 1583 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4880355Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4880679Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4880990Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4881413Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4881714Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4882019Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4882377Z "id": "REQ-HAZARD-BROKER-SEED-WIRE-SKEW", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4888053Z "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-21T09:42:01.4893449Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4893816Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4894145Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4894469Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4894793Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4895118Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4895451Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4895785Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4896165Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4896519Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4896882Z "path": "docs/KNOWN-HAZARDS.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4897325Z "line": 395 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4897691Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4898015Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4898315Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4898627Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4899047Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4899420Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4899787Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4900148Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4900601Z "line": 75 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4900955Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4901287Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4901594Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4901909Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4902238Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4902626Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4902983Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4903293Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4903641Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4904014Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4904362Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4904729Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4905183Z "line": 632 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4905540Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4905869Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4906175Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4906480Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4906788Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4907098Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4907456Z "id": "REQ-HAZARD-CASCADE-WIPE-GUARD", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4908028Z "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-21T09:42:01.4908576Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4909032Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4909384Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4909713Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4910032Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4910375Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4910766Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4911277Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4911649Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4911971Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4912397Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4912765Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4913113Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4913486Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4913928Z "line": 172 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4914286Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4914607Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4914974Z "path": "crates/spt/src/api/worker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4915414Z "line": 18 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4915767Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4916077Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4916438Z "path": "crates/spt/src/api/worker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4916891Z "line": 100 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4917252Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4917571Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4917881Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4918191Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4918525Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4918908Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4923639Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4924056Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4924418Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4924803Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4925153Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4925548Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4926017Z "line": 857 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4926374Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4926698Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4927064Z "path": "crates/spt/src/api/worker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4927509Z "line": 161 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4927869Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4928180Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4928539Z "path": "crates/spt/src/api/worker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4929071Z "line": 233 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4929439Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4929782Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4930100Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4930417Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4930723Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4931032Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4931376Z "id": "REQ-HAZARD-CHILD-CONSOLE-FLASH", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4932355Z "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-21T09:42:01.4933289Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4933657Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4933986Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4934301Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4934611Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4934940Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4935284Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4935639Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4935996Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4936357Z "path": "docs/KNOWN-HAZARDS.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4936790Z "line": 220 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4937144Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4937464Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4937774Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4938084Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4938435Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4938812Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4939241Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4939617Z "path": "crates/spt-daemon/src/shellhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4940076Z "line": 316 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4940433Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4940760Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4941136Z "path": "crates/spt-runtime/src/runtime.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4941592Z "line": 356 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4941946Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4942280Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4942657Z "path": "crates/spt-runtime/src/runtime.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4943114Z "line": 578 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4943465Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4943787Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4944155Z "path": "crates/spt-store/src/gitrun.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4944774Z "line": 77 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4945228Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4945548Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4945858Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4946161Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4946512Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4946889Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4947237Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4947556Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4947895Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4948271Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4948615Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4949067Z "path": "crates/spt-runtime/src/runtime.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4949543Z "line": 747 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4949896Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4950211Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4950579Z "path": "crates/spt-runtime/src/runtime.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4951031Z "line": 785 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4951395Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4951714Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4952081Z "path": "crates/spt-store/src/gitrun.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4952535Z "line": 166 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4952874Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4953203Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4953513Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4953819Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4954126Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4954433Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4954782Z "id": "REQ-HAZARD-CONFLICT-BOTH-PRESERVED", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4955988Z "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-21T09:42:01.4957135Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4957496Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4957825Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4958140Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4958460Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4958789Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4959199Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4959579Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4959928Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4960233Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4960581Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4960957Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4961295Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4961676Z "path": "crates/spt-daemon/src/reconcile.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4962146Z "line": 22 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4962499Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4962823Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4963176Z "path": "crates/spt-daemon/src/sync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4963628Z "line": 487 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4963972Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4964282Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4964657Z "path": "crates/spt-live/src/reconcile.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4965109Z "line": 17 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4965461Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4965786Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4966152Z "path": "crates/spt-live/src/reconcile.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4966621Z "line": 147 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4966964Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4967291Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4967681Z "path": "crates/spt-store/src/contextstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4968147Z "line": 226 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4968505Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4968829Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4969301Z "path": "crates/spt-store/src/contextstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4969784Z "line": 251 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4970144Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4970463Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4970850Z "path": "crates/spt-store/src/contextstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4971331Z "line": 277 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4971689Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4971999Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4972360Z "path": "crates/spt-store/src/syncmerge.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4972939Z "line": 124 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4973297Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4973717Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4974083Z "path": "crates/spt-store/src/syncmerge.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4974551Z "line": 224 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4974900Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4975213Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4975530Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4975839Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4976179Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4976561Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4976909Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4977228Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4977581Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4977949Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4978354Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4978794Z "path": "crates/spt-daemon/src/reconcile.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4979384Z "line": 63 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4979790Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4980156Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4980570Z "path": "crates/spt-daemon/src/reconcile.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4981091Z "line": 73 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4981496Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4981867Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4982298Z "path": "crates/spt-daemon/src/reconcile.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4982815Z "line": 85 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4983218Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4983585Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4983949Z "path": "crates/spt-daemon/tests/sync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4984414Z "line": 346 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4984768Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4985082Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4985451Z "path": "crates/spt-live/src/reconcile.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4985915Z "line": 281 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4986262Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4986582Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4986953Z "path": "crates/spt-live/src/reconcile.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4987426Z "line": 322 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4987784Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4988099Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4988476Z "path": "crates/spt-live/src/reconcile.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4989044Z "line": 360 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4989391Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4989706Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4990097Z "path": "crates/spt-store/src/contextstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4990570Z "line": 688 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4990933Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4991265Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4991642Z "path": "crates/spt-store/src/syncmerge.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4992103Z "line": 397 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4992465Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4992780Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4993153Z "path": "crates/spt-store/src/syncmerge.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4993617Z "line": 440 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4993969Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4994279Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4994599Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4994904Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4995204Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4995514Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4995848Z "id": "REQ-HAZARD-CONPTY-DSR", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4996456Z "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-21T09:42:01.4997089Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4997447Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4997770Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4998095Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4998409Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4998734Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4999145Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4999532Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.4999885Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5000205Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5000549Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5000920Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5001276Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5001805Z "path": "crates/spt-term/src/reader.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5002263Z "line": 169 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5002716Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5003030Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5003345Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5003660Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5004007Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5004377Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5004735Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5005102Z "path": "crates/spt-term/tests/dsr.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5005554Z "line": 44 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5005907Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5006232Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5006600Z "path": "crates/spt-term/tests/dsr.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5007049Z "line": 66 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5007392Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5007702Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5008017Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5008335Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5008693Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5009219Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5009555Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5009931Z "path": "crates/spt-term/src/reader.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5010368Z "line": 186 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5010716Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5011036Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5011404Z "path": "crates/spt-term/src/reader.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5011851Z "line": 238 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5012213Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5012522Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5012899Z "path": "crates/spt-term/src/reader.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5013353Z "line": 266 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5013701Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5014012Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5014317Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5014620Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5014927Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5015232Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5015591Z "id": "REQ-HAZARD-CONTROLLER-RETAKE-FLOOR", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5022464Z "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-21T09:42:01.5028822Z "requiredStages": [], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5029289Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5029623Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5029958Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5030339Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5030699Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5031013Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5031365Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5031737Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5032085Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5032400Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5032858Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5033240Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5033597Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5034005Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5034348Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5034735Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5035093Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5035408Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5035716Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5036009Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5036372Z "id": "REQ-HAZARD-CONTROLLER-WRITER-REORDER", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5057526Z "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-21T09:42:01.5076747Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5077109Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5077433Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5077757Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5078084Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5078399Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5078718Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5079108Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5079447Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5079823Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5080172Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5080526Z "path": "docs/KNOWN-HAZARDS.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5080956Z "line": 468 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5081308Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5081628Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5081943Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5082252Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5082609Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5082986Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5083338Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5083713Z "path": "crates/spt-daemon/src/brain.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5084171Z "line": 342 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5084524Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5084852Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5085228Z "path": "crates/spt-daemon/src/brain.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5085678Z "line": 1188 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5086045Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5086363Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5086735Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5087192Z "line": 793 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5087551Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5087865Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5088175Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5088483Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5088829Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5089273Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5089626Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5090011Z "path": "crates/spt-daemon/tests/attach.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5090489Z "line": 1163 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5090842Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5091157Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5091530Z "path": "crates/spt-daemon/tests/attach.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5091982Z "line": 1264 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5092345Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5092669Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5093037Z "path": "crates/spt-daemon/tests/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5093498Z "line": 1169 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5093855Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5094172Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5094487Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5094802Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5095144Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5095513Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5095856Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5096342Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5096798Z "line": 2850 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5097286Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5097605Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5097924Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5102232Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5102629Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5102944Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5103301Z "id": "REQ-HAZARD-DAEMON-HOSTED-LIVENESS", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5104312Z "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-21T09:42:01.5105249Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5105615Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5105943Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5106258Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5106578Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5106892Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5107217Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5107550Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5107959Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5108317Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5108632Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5109043Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5109415Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5109760Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5110140Z "path": "crates/spt-daemon/src/lifecycle.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5110608Z "line": 178 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5110961Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5111281Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5111652Z "path": "crates/spt-daemon/src/lifecycle.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5112124Z "line": 226 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5112461Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5112787Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5113146Z "path": "crates/spt-msg/src/deliver.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5113594Z "line": 79 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5113942Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5114261Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5114619Z "path": "crates/spt-msg/src/ring.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5115066Z "line": 52 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5115422Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5115727Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5116085Z "path": "crates/spt-store/src/info.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5116533Z "line": 263 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5116890Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5117043Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5117243Z "path": "crates/spt-store/src/liveness.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5117401Z "line": 27 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5117562Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5117711Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5117919Z "path": "crates/spt-store/src/liveness.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5118078Z "line": 79 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5118234Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5118377Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5118577Z "path": "crates/spt-store/src/liveness.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5118730Z "line": 102 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5118887Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5119130Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5119331Z "path": "crates/spt-store/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5119497Z "line": 116 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5119656Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5119792Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5119951Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5120092Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5120254Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5120414Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5120562Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5120791Z "path": "crates/spt-daemon/tests/daemon_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5120939Z "line": 43 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5121091Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5121240Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5121396Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5121541Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5121701Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5121855Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5122006Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5122384Z "path": "crates/spt-daemon/src/lifecycle.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5122532Z "line": 678 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5122785Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5122936Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5123141Z "path": "crates/spt-store/src/info.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5123305Z "line": 495 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5123454Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5123615Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5123820Z "path": "crates/spt-store/src/liveness.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5123987Z "line": 124 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5124140Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5124297Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5124507Z "path": "crates/spt-store/src/liveness.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5124655Z "line": 143 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5124807Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5124960Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5125164Z "path": "crates/spt-store/src/liveness.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5125314Z "line": 160 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5125465Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5125622Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5125805Z "path": "crates/spt-store/src/liveness.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5125972Z "line": 187 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5126120Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5126272Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5126472Z "path": "crates/spt-store/src/liveness.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5126631Z "line": 206 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5126787Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5126932Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5127130Z "path": "crates/spt-store/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5127289Z "line": 229 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5127441Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5127590Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5127741Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5127895Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5128046Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5128200Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5128408Z "id": "REQ-HAZARD-DAEMON-SCHED-NONBLOCKING", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5129519Z "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-21T09:42:01.5129700Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5129858Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5130010Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5130163Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5130320Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5130469Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5130633Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5130795Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5130950Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5131108Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5131275Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5131437Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5131585Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5131796Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5131966Z "line": 1257 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5132119Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5132271Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5132486Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5132648Z "line": 1511 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5132805Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5132954Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5133106Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5133259Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5133431Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5133591Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5133743Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5133889Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5134061Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5134227Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5134376Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5134591Z "path": "crates/spt-daemon/tests/shellchan.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5134748Z "line": 161 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5134895Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5135052Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5135316Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5135467Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5135621Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5135773Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5136053Z "id": "REQ-HAZARD-DAEMON-STOP-BARRIER", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5138717Z "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-21T09:42:01.5138901Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5139126Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5139278Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5139426Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5139592Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5139737Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5139902Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5140061Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5140208Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5140371Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5140537Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5140705Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5140860Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5141071Z "path": "crates/spt-daemon/src/seedmap.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5141241Z "line": 257 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5141389Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5141549Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5141692Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5141854Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5142022Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5142178Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5142322Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5142474Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5142637Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5142803Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5142951Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5143165Z "path": "crates/spt-daemon/src/seedmap.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5143323Z "line": 360 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5143470Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5143624Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5143780Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5143925Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5144080Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5144232Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5144430Z "id": "REQ-HAZARD-DAEMON-STOP-REAP", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5147136Z "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-21T09:42:01.5147316Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5147470Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5147640Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5147789Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5147941Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5148095Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5148265Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5148429Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5148575Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5148739Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5148899Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5149152Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5149320Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5149542Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5149705Z "line": 1018 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5149852Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5150015Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5150349Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5150510Z "line": 283 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5150758Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5150916Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5151116Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5151275Z "line": 316 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5151430Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5151580Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5151787Z "path": "crates/spt-daemon/src/reap.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5151935Z "line": 26 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5152085Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5152247Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5152400Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5152553Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5152729Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5152911Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5153063Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5153211Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5153382Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5153540Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5153706Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5153911Z "path": "crates/spt-daemon/src/reap.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5154069Z "line": 271 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5154222Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5154374Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5154574Z "path": "crates/spt-daemon/src/reap.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5154730Z "line": 348 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5154891Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5155033Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5155186Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5155338Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5155497Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5155653Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5155839Z "id": "REQ-HAZARD-DEFERRED-DRAIN", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5156145Z "title": "Deferred spool rows excluded from the event-stream drain (1.4)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5156326Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5156550Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5156840Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5157085Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5157331Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5157481Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5157657Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5157833Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5157992Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5158162Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5158321Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5158491Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5158660Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5158864Z "path": "crates/spt-store/src/spool.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5159159Z "line": 40 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5159332Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5159493Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5159698Z "path": "crates/spt-store/src/spool.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5159857Z "line": 103 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5160017Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5160174Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5160374Z "path": "crates/spt-store/src/spool.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5160536Z "line": 218 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5160680Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5160837Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5161036Z "path": "crates/spt-store/src/spool.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5161205Z "line": 323 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5161365Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5161525Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5161685Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5161849Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5162019Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5162220Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5162376Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5162532Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5162692Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5162842Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5162993Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5163194Z "path": "crates/spt-store/src/spool.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5163355Z "line": 361 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5163509Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5163651Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5164033Z "path": "crates/spt-store/src/spool.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5164200Z "line": 433 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5164443Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5164605Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5164800Z "path": "crates/spt-store/src/spool.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5164964Z "line": 496 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5165115Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5165276Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5165470Z "path": "crates/spt-store/src/spool.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5165641Z "line": 517 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5165799Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5165956Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5166109Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5166271Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5166457Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5166610Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5166805Z "id": "REQ-HAZARD-DEFERRED-MANIFEST", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5170353Z "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-21T09:42:01.5170526Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5170677Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5170835Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5170982Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5171141Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5171282Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5171460Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5171630Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5171784Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5171945Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5172108Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5172274Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5172423Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5172637Z "path": "crates/spt-runtime/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5172794Z "line": 402 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5172950Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5173102Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5173311Z "path": "crates/spt-runtime/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5173473Z "line": 446 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5173616Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5173764Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5173925Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5174078Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5174245Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5174407Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5174559Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5174707Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5174864Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5175031Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5175179Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5175394Z "path": "crates/spt-runtime/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5175548Z "line": 910 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5175703Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5175856Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5176011Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5176168Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5176321Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5176478Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5176678Z "id": "REQ-HAZARD-DEFERRED-SURVIVE-DRAIN", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5176903Z "title": "Deferred rows survive poll drain (4.4)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5177059Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5177217Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5177365Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5177523Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5177675Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5177829Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5177994Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5178270Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5178417Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5178667Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5178836Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5179054Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5179207Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5179413Z "path": "crates/spt-store/src/spool.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5179570Z "line": 116 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5179732Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5179884Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5180085Z "path": "crates/spt-store/src/spool.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5180251Z "line": 211 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5180400Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5180547Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5180701Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5180851Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5181015Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5181175Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5181323Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5181476Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5181648Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5181810Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5181963Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5182157Z "path": "crates/spt-store/src/spool.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5182320Z "line": 388 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5182500Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5182659Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5182853Z "path": "crates/spt-store/src/spool.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5183016Z "line": 469 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5183178Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5183322Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5183468Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5183620Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5183775Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5183933Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5184128Z "id": "REQ-HAZARD-DETACHED-PIPE-INHERIT", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5185774Z "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-21T09:42:01.5185954Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5186108Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5186263Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5186421Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5186576Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5186728Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5186896Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5187057Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5187201Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5187396Z "path": "docs/KNOWN-HAZARDS.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5187567Z "line": 206 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5187715Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5187868Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5188016Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5188168Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5188341Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5188506Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5188651Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5188864Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5189105Z "line": 691 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5189256Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5189405Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5189600Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5189753Z "line": 791 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5189910Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5190068Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5190273Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5190434Z "line": 1120 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5190592Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5190745Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5190960Z "path": "crates/spt-daemon/src/shellhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5191117Z "line": 184 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5191266Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5191421Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5191688Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5191845Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5192013Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5192289Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5192435Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5192599Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5192769Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5192928Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5193084Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5193285Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5193447Z "line": 1169 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5193595Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5193748Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5193971Z "path": "crates/spt/tests/notify_shell_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5194133Z "line": 44 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5194283Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5194431Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5194654Z "path": "crates/spt/tests/shell_actgate_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5194813Z "line": 52 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5194969Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5195128Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5195317Z "path": "crates/spt/tests/shell_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5195490Z "line": 57 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5195632Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5195795Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5196019Z "path": "crates/spt/tests/shell_sleepwake_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5196180Z "line": 54 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5196334Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5196486Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5196639Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5196782Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5196942Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5197085Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5197303Z "id": "REQ-HAZARD-DIRECT-WRITE-PRECEDENCE", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5197685Z "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-21T09:42:01.5197850Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5198005Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5198155Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5198310Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5198457Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5198615Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5198785Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5198939Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5199211Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5199367Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5199528Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5199689Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5199845Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5200055Z "path": "crates/spt-live/src/context.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5200213Z "line": 26 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5200361Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5200508Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5200718Z "path": "crates/spt-live/src/context.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5200877Z "line": 135 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5201042Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5201196Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5201414Z "path": "crates/spt-store/src/contextmark.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5201586Z "line": 26 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5201738Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5201896Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5202107Z "path": "crates/spt-store/src/contextmark.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5202262Z "line": 237 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5202428Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5202573Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5202729Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5202882Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5203058Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5203211Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5203364Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5203526Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5203683Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5203845Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5203988Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5204202Z "path": "crates/spt-live/src/context.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5204351Z "line": 161 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5204503Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5204769Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5204967Z "path": "crates/spt-live/src/context.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5205219Z "line": 170 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5205358Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5205511Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5205712Z "path": "crates/spt-live/src/context.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5205867Z "line": 179 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5206022Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5206173Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5206379Z "path": "crates/spt-live/src/context.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5206540Z "line": 190 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5206698Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5206855Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5207041Z "path": "crates/spt-live/src/context.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5207209Z "line": 199 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5207356Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5207507Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5207706Z "path": "crates/spt-live/src/context.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5207873Z "line": 216 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5208021Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5208172Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5208369Z "path": "crates/spt-live/src/context.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5208512Z "line": 242 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5208670Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5208821Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5209093Z "path": "crates/spt-live/src/ingest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5209260Z "line": 295 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5209403Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5209552Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5209742Z "path": "crates/spt-live/src/signoff.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5209904Z "line": 244 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5210055Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5210217Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5210434Z "path": "crates/spt-store/src/contextmark.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5210587Z "line": 265 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5210744Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5210898Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5211112Z "path": "crates/spt-store/src/contextmark.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5211268Z "line": 293 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5211422Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5211583Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5211785Z "path": "crates/spt-store/src/contextmark.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5211946Z "line": 317 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5212099Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5212251Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5212461Z "path": "crates/spt-store/src/contextmark.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5212623Z "line": 327 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5212771Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5212922Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5213128Z "path": "crates/spt-store/src/syncmerge.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5213280Z "line": 540 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5213433Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5213584Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5213743Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5213899Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5214053Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5214205Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5214415Z "id": "REQ-HAZARD-DRIVEN-BY-IDLE-REMOTE-EVICT", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5221653Z "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-21T09:42:01.5222076Z "requiredStages": [], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5222229Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5222377Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5222549Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5222725Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5222873Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5223035Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5223198Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5223359Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5223505Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5223665Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5223835Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5223988Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5224144Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5224298Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5224469Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5224637Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5224784Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5224932Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5225075Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5225224Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5225414Z "id": "REQ-HAZARD-DRIVEN-BY-SELFHEAL", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5227724Z "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-21T09:42:01.5227909Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5228058Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5228209Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5228358Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5228509Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5228656Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5228807Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5229050Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5229202Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5229356Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5229507Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5229680Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5229841Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5230004Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5230223Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5230376Z "line": 538 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5230523Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5230672Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5230881Z "path": "crates/spt-daemon/src/msg.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5231039Z "line": 625 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5231185Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5231337Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5231583Z "path": "crates/spt-daemon/tests/driven_by_selfheal.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5231750Z "line": 21 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5231898Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5232060Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5232199Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5232356Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5232523Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5232680Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5232838Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5233080Z "path": "crates/spt-daemon/tests/driven_by_selfheal.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5237243Z "line": 236 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5237572Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5237725Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5237998Z "path": "crates/spt-daemon/tests/driven_by_selfheal.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5238164Z "line": 396 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5238313Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5238464Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5238721Z "path": "crates/spt-daemon/tests/inject_control_wedge.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5238890Z "line": 1496 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5239117Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5239274Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5239534Z "path": "crates/spt-daemon/tests/inject_control_wedge.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5239706Z "line": 1648 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5239853Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5240006Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5240163Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5240307Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5240483Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5240640Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5240802Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5241016Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5241185Z "line": 887 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5241340Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5241490Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5241646Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5241793Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5241939Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5242086Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5242291Z "id": "REQ-HAZARD-DROP-FILE-SINGLE-WRITER", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5242549Z "title": "Drop files are daemon-owned single-writer (6.4)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5242711Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5242868Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5243010Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5243164Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5243321Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5243479Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5243650Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5243822Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5243969Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5244123Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5244294Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5244447Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5244598Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5244800Z "path": "crates/spt-live/src/echo.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5244955Z "line": 25 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5245113Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5245260Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5245462Z "path": "crates/spt-live/src/ingest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5245614Z "line": 26 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5245761Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5245919Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5246114Z "path": "crates/spt-live/src/ingest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5246273Z "line": 159 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5246423Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5246582Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5246734Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5246895Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5247065Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5247217Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5247366Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5247517Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5247690Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5247841Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5247990Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5248190Z "path": "crates/spt-live/src/echo.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5248338Z "line": 188 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5248490Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5248638Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5248834Z "path": "crates/spt-live/src/echo.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5249067Z "line": 240 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5249226Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5249382Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5249573Z "path": "crates/spt-live/src/ingest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5249733Z "line": 186 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5249881Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5250132Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5250284Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5250437Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5250595Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5250829Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5251018Z "id": "REQ-HAZARD-EBUSY-RENAME", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5251305Z "title": "tmp-write + atomic-rename + retry on Windows EBUSY (5.2)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5251477Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5251634Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5251792Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5251939Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5252097Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5252252Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5252424Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5252579Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5252732Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5252894Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5253052Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5253214Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5253367Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5253566Z "path": "crates/spt-store/src/atomic.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5253734Z "line": 48 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5253881Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5254034Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5254229Z "path": "crates/spt-store/src/atomic.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5254377Z "line": 55 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5254529Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5254678Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5254893Z "path": "crates/spt-store/src/atomic.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5255049Z "line": 74 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5255210Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5255364Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5255554Z "path": "crates/spt-store/src/atomic.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5255721Z "line": 91 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5255869Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5256022Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5256164Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5256326Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5256498Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5256660Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5256818Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5256975Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5257147Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5257299Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5257455Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5257649Z "path": "crates/spt-store/src/atomic.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5257797Z "line": 149 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5257954Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5258106Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5258302Z "path": "crates/spt-store/src/atomic.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5258460Z "line": 166 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5258621Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5258779Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5259050Z "path": "crates/spt-store/src/atomic.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5259207Z "line": 176 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5259365Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5259522Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5259714Z "path": "crates/spt-store/src/atomic.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5259879Z "line": 194 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5260029Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5260184Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5260375Z "path": "crates/spt-store/src/atomic.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5260530Z "line": 207 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5260678Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5260831Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5260983Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5261136Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5261283Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5261441Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5261637Z "id": "REQ-HAZARD-ECHO-BEFORE-SIGNOFF", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5261951Z "title": "Echo-commune fires before INIT_SIGNOFF on orphan teardown (3.3)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5262113Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5262257Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5262413Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5262562Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5262714Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5262870Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5263040Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5263302Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5263454Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5263717Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5263884Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5264036Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5264184Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5264398Z "path": "crates/spt-daemon/src/lifecycle.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5264548Z "line": 466 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5264704Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5264862Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5265061Z "path": "crates/spt-live/src/signoff.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5265220Z "line": 26 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5265371Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5265530Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5265675Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5265838Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5266018Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5266177Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5266329Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5266482Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5266653Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5266811Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5266972Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5267178Z "path": "crates/spt-live/src/signoff.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5267339Z "line": 150 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5267493Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5267649Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5267845Z "path": "crates/spt-live/src/signoff.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5268001Z "line": 208 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5268158Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5268309Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5268457Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5268604Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5268758Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5268904Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5269177Z "id": "REQ-HAZARD-EFFECT-JOURNAL-PTY-WEDGE", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5282747Z "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-21T09:42:01.5283177Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5283338Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5283487Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5283643Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5283802Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5283948Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5284100Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5284269Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5284427Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5284584Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5284728Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5284884Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5285048Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5285194Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5285409Z "path": "crates/spt-daemon/src/effect.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5285562Z "line": 99 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5285715Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5285862Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5286062Z "path": "crates/spt-daemon/src/effect.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5286229Z "line": 201 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5286377Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5286535Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5286678Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5286829Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5286997Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5287153Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5287302Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5287549Z "path": "crates/spt-daemon/tests/inject_control_wedge.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5287716Z "line": 737 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5287864Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5288016Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5288222Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5288364Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5288523Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5288684Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5288832Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5289098Z "path": "crates/spt-daemon/src/effect.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5289264Z "line": 517 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5289424Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5289573Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5289772Z "path": "crates/spt-daemon/src/effect.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5289921Z "line": 576 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5290077Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5290231Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5290377Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5290526Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5290669Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5290827Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5291026Z "id": "REQ-HAZARD-ELEVATED-DAEMON-SPAWN", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5292964Z "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-21T09:42:01.5293141Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5293293Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5293459Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5293723Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5293884Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5294052Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5294291Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5294460Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5294617Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5294772Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5294958Z "path": "docs/KNOWN-HAZARDS.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5295115Z "line": 214 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5295269Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5295416Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5295574Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5295731Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5295903Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5296065Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5296223Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5296427Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5296576Z "line": 56 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5296727Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5296867Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5297071Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5297225Z "line": 580 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5297385Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5297542Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5297741Z "path": "crates/spt-daemon/src/deelevate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5297895Z "line": 36 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5298052Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5298205Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5298415Z "path": "crates/spt-daemon/src/deelevate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5298581Z "line": 59 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5298734Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5298881Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5299187Z "path": "crates/spt-daemon/src/deelevate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5299339Z "line": 83 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5299502Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5299648Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5299861Z "path": "crates/spt-daemon/src/deelevate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5300027Z "line": 140 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5300176Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5300333Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5300533Z "path": "crates/spt-daemon/src/deelevate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5300691Z "line": 159 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5300833Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5300986Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5301196Z "path": "crates/spt-daemon/src/deelevate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5301354Z "line": 384 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5301501Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5301650Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5301858Z "path": "crates/spt-daemon/src/deelevate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5302007Z "line": 535 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5302169Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5302322Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5302515Z "path": "crates/spt-daemon/src/deelevate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5302677Z "line": 581 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5302832Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5302986Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5303180Z "path": "crates/spt/src/elevation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5303334Z "line": 300 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5303490Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5303644Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5303829Z "path": "crates/spt/src/main.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5303982Z "line": 42 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5304129Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5304278Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5304434Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5304593Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5304759Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5304922Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5305073Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5305225Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5305389Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5305543Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5305690Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5305891Z "path": "crates/spt-daemon/src/deelevate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5306057Z "line": 813 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5306319Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5306478Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5306682Z "path": "crates/spt-daemon/src/deelevate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5306949Z "line": 854 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5307112Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5307259Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5307470Z "path": "crates/spt-daemon/src/deelevate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5307626Z "line": 928 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5307775Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5307940Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5308088Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5308259Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5308398Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5308550Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5308765Z "id": "REQ-HAZARD-ENDPOINT-RUN-ATTACH-OUTPUT", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5316245Z "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-21T09:42:01.5316451Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5316607Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5316761Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5316912Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5317071Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5317218Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5317372Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5317528Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5317686Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5317834Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5317978Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5318143Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5318297Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5318452Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5318658Z "path": "crates/spt-daemon/src/attach.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5318824Z "line": 106 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5319039Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5319196Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5319344Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5319491Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5319659Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5319816Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5319969Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5320194Z "path": "crates/spt/tests/dummy_harness_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5320354Z "line": 296 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5320508Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5320659Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5320811Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5320963Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5321128Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5321287Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5321549Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5321767Z "path": "crates/spt-daemon/tests/attach.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5322020Z "line": 464 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5322174Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5322320Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5322484Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5322630Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5322784Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5322936Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5323104Z "id": "REQ-HAZARD-ENV-SUBST", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5328098Z "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-21T09:42:01.5328284Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5328436Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5328590Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5328747Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5328895Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5329131Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5329285Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5329451Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5329619Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5329770Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5329985Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5330148Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5330324Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5330510Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5330734Z "path": "crates/spt-daemon/src/harnesshost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5330896Z "line": 123 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5331053Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5331196Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5331391Z "path": "crates/spt-term/src/pty.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5331551Z "line": 134 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5331698Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5331866Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5332013Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5332161Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5332322Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5332485Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5332642Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5332843Z "path": "crates/spt-daemon/tests/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5333006Z "line": 312 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5333153Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5333306Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5333506Z "path": "crates/spt-daemon/tests/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5333669Z "line": 525 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5333820Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5333974Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5334129Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5334282Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5334446Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5334603Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5334747Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5334972Z "path": "crates/spt-daemon/src/harnesshost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5335132Z "line": 250 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5335282Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5335428Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5335582Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5335734Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5335882Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5336148Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5336348Z "id": "REQ-HAZARD-ENVELOPE-CR-LINESAFE", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5339035Z "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-21T09:42:01.5339312Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5339460Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5339610Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5339759Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5339916Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5340112Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5340282Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5340446Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5340602Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5340751Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5340912Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5341075Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5341232Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5341442Z "path": "crates/spt-proto/src/envelope.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5341599Z "line": 31 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5341748Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5341894Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5342046Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5342196Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5342355Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5342511Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5342670Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5342820Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5342989Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5343145Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5343313Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5343527Z "path": "crates/spt-proto/src/envelope.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5343679Z "line": 181 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5343837Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5343990Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5344147Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5344300Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5344447Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5344606Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5344793Z "id": "REQ-HAZARD-ENVELOPE-DECODE-ORDER", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5345063Z "title": "Envelope decode order, ampersand decoded last (4.1)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5345227Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5345378Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5345532Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5345678Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5345847Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5345993Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5346166Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5346327Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5346481Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5346632Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5346805Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5346971Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5347130Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5347341Z "path": "crates/spt-proto/src/envelope.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5347494Z "line": 49 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5347649Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5347793Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5347997Z "path": "crates/spt-proto/src/envelope.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5348155Z "line": 81 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5348302Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5348451Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5348588Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5348747Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5348913Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5349170Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5349319Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5349475Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5349634Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5349795Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5349939Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5350261Z "path": "crates/spt-proto/src/envelope.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5350424Z "line": 156 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5350658Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5350810Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5351015Z "path": "crates/spt-proto/src/envelope.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5351162Z "line": 173 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5351320Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5351472Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5351673Z "path": "crates/spt-proto/src/envelope.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5351845Z "line": 196 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5351997Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5352145Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5352293Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5352449Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5352597Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5352752Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5352963Z "id": "REQ-HAZARD-ENVELOPE-PARSER-SAFE", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5353253Z "title": "Two-slice envelope parser is panic-free and tolerant (4.2)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5353428Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5353582Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5353738Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5353892Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5354043Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5354197Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5354358Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5354522Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5354673Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5354832Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5354988Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5355156Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5355311Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5355511Z "path": "crates/spt-proto/src/envelope.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5355676Z "line": 120 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5355829Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5355981Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5356134Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5356291Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5356459Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5356615Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5356778Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5356930Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5357102Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5357255Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5357413Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5357623Z "path": "crates/spt-proto/src/envelope.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5357774Z "line": 212 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5357930Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5358077Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5358286Z "path": "crates/spt-proto/src/envelope.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5358439Z "line": 221 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5358601Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5358758Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5359030Z "path": "crates/spt-proto/src/envelope.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5359191Z "line": 229 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5359344Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5359502Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5359707Z "path": "crates/spt-proto/src/envelope.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5359870Z "line": 239 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5360030Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5360185Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5360389Z "path": "crates/spt-proto/src/envelope.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5360547Z "line": 249 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5360702Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5360845Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5361007Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5361160Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5361308Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5361466Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5361651Z "id": "REQ-HAZARD-EPHEMERAL-CLEANUP", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5361942Z "title": "Ephemeral perch cleanup on every ring exit path (3.1)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5362109Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5362266Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5362420Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5362571Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5362724Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5362876Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5363047Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5363312Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5363465Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5363626Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5363879Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5364047Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5364194Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5364391Z "path": "crates/spt-msg/src/ring.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5364542Z "line": 14 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5364701Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5364852Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5365044Z "path": "crates/spt-msg/src/ring.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5365191Z "line": 63 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5365340Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5365495Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5365645Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5365801Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5365967Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5366122Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5366279Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5366418Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5366594Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5366747Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5366904Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5367104Z "path": "crates/spt-msg/src/ring.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5367258Z "line": 164 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5367415Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5367568Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5367753Z "path": "crates/spt-msg/src/ring.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5367906Z "line": 198 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5368057Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5368207Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5368395Z "path": "crates/spt-msg/src/ring.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5368557Z "line": 220 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5368698Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5368856Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5369060Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5369214Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5369370Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5369519Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5369694Z "id": "REQ-HAZARD-EPOCH-RESET", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5371672Z "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-21T09:42:01.5371840Z "requiredStages": [], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5371996Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5372140Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5372302Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5372455Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5372607Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5372798Z "path": "docs/KNOWN-HAZARDS.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5372950Z "line": 165 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5373103Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5373241Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5373395Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5373559Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5373726Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5373886Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5374030Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5374187Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5374340Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5374506Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5374659Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5374811Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5374974Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5375135Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5375294Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5375436Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5375590Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5375736Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5375942Z "id": "REQ-HAZARD-EVENTPART-REASSEMBLY", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5376290Z "title": "EVENT-PART split/reassembly is byte-exact; orphan parts dropped silently", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5376455Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5376612Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5376887Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5377044Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5377198Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5377440Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5377612Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5377770Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5381052Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5381256Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5381428Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5381586Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5381739Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5381956Z "path": "crates/spt-proto/src/chunk.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5382123Z "line": 76 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5382271Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5382420Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5382629Z "path": "crates/spt-proto/src/chunk.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5382786Z "line": 167 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5382944Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5383087Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5383283Z "path": "crates/spt-proto/src/chunk.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5383458Z "line": 233 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5383602Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5383758Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5383951Z "path": "crates/spt-proto/src/chunk.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5384120Z "line": 272 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5384282Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5384428Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5384581Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5384723Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5384896Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5385057Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5385215Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5385376Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5385535Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5385695Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5385845Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5386044Z "path": "crates/spt-proto/src/chunk.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5386197Z "line": 321 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5386349Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5386507Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5386702Z "path": "crates/spt-proto/src/chunk.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5386864Z "line": 329 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5387010Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5387172Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5387366Z "path": "crates/spt-proto/src/chunk.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5387524Z "line": 356 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5387676Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5387820Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5388024Z "path": "crates/spt-proto/src/chunk.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5388182Z "line": 395 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5388325Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5388487Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5388683Z "path": "crates/spt-proto/src/chunk.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5388853Z "line": 406 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5389074Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5389217Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5389413Z "path": "crates/spt-proto/src/chunk.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5389577Z "line": 418 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5389725Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5389875Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5390087Z "path": "crates/spt-proto/src/chunk.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5390243Z "line": 442 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5390396Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5390538Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5390696Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5390829Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5390983Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5391130Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5391312Z "id": "REQ-HAZARD-GEN-START-NOW", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5391575Z "title": "gen_start = now() on cold-start and handoff (2.4)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5391745Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5391903Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5392049Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5392204Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5392364Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5392511Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5392670Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5392965Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5393126Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5393274Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5393528Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5393684Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5393838Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5394047Z "path": "crates/spt-daemon/src/brain.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5394205Z "line": 22 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5394356Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5394501Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5394661Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5394814Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5394978Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5395136Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5395283Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5395489Z "path": "crates/spt-daemon/tests/handoff.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5395645Z "line": 18 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5395799Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5395946Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5396095Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5396251Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5396419Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5396585Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5396739Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5396895Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5397054Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5397200Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5397406Z "id": "REQ-HAZARD-GRACE-BEFORE-SIGNOFF", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5397719Z "title": "Grace-period wait completes before composing INIT_SIGNOFF (1.1)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5397888Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5398032Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5398193Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5398351Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5398498Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5398652Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5398813Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5399042Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5399199Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5399361Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5399524Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5399690Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5399849Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5400057Z "path": "crates/spt-daemon/src/lifecycle.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5400229Z "line": 465 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5400379Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5400536Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5400741Z "path": "crates/spt-live/src/signoff.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5400918Z "line": 27 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5401070Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5401209Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5401351Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5401500Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5401666Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5401829Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5401981Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5402140Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5402305Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5402469Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5402629Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5402845Z "path": "crates/spt-daemon/src/lifecycle.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5403004Z "line": 990 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5403159Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5403319Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5403520Z "path": "crates/spt-live/src/signoff.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5403687Z "line": 181 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5403840Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5403997Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5404140Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5404282Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5404441Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5404583Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5404789Z "id": "REQ-HAZARD-HANDOFF-ARGV-COMPAT", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5405052Z "title": "Broker/brain IPC + handoff argv version-tolerant (2.3)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5405226Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5405383Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5405538Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5405696Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5405852Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5406011Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5406167Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5406440Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5406598Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5406839Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5407012Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5407169Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5407327Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5407537Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5407693Z "line": 73 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5407852Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5408004Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5408246Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5408410Z "line": 972 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5408568Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5408720Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5408911Z "path": "crates/spt-daemon/src/frame.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5409150Z "line": 20 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5409303Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5409459Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5409707Z "path": "crates/spt-daemon/src/frame.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5409875Z "line": 100 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5410022Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5410176Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5410384Z "path": "crates/spt-daemon/src/msg.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5410542Z "line": 603 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5410707Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5410859Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5411063Z "path": "crates/spt-daemon/src/transport.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5411216Z "line": 68 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5411373Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5411531Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5411731Z "path": "crates/spt-daemon/src/transport.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5411940Z "line": 80 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5412084Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5412245Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5412385Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5412541Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5412714Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5412880Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5413038Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5413237Z "path": "crates/spt/tests/n1_pairing.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5413405Z "line": 44 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5413550Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5413709Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5413860Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5414009Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5414175Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5414324Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5414476Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5414743Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5414896Z "line": 1181 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5415053Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5415206Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5415410Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5415564Z "line": 1197 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5415715Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5415872Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5416079Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5416246Z "line": 2439 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5416399Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5416552Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5416741Z "path": "crates/spt-daemon/src/frame.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5416896Z "line": 152 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5417052Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5417205Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5417399Z "path": "crates/spt-daemon/src/frame.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5417549Z "line": 175 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5417705Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5417854Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5418048Z "path": "crates/spt-daemon/src/frame.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5418216Z "line": 186 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5418363Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5418517Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5418715Z "path": "crates/spt-daemon/src/frame.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5419080Z "line": 202 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5419229Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5419380Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5419671Z "path": "crates/spt-daemon/src/frame.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5419833Z "line": 216 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5419976Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5420125Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5420344Z "path": "crates/spt-daemon/src/transport.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5420496Z "line": 137 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5420654Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5420810Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5420993Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5421149Z "line": 8152 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5421296Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5421447Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5421642Z "path": "crates/spt/tests/n1_compat.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5421799Z "line": 30 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5421952Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5422105Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5422301Z "path": "crates/spt/tests/n1_compat.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5422453Z "line": 73 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5422606Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5422758Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5422911Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5423058Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5423211Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5423358Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5423565Z "id": "REQ-HAZARD-HOSTED-LIVENESS-RECONCILE", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5429616Z "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-21T09:42:01.5429807Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5429974Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5430122Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5430280Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5430437Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5430599Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5430756Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5430919Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5431084Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5431234Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5431389Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5431554Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5431709Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5431861Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5432073Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5432231Z "line": 510 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5432378Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5432522Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5432736Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5432895Z "line": 704 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5433045Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5433200Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5433351Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5433505Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5433800Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5433966Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5434120Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5434421Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5434581Z "line": 1119 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5434738Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5434900Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5435110Z "path": "crates/spt/tests/attach_wedge_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5435271Z "line": 312 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5435421Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5435572Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5435730Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5435882Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5436055Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5436211Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5436365Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5436569Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5436728Z "line": 821 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5436873Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5437031Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5437186Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5437338Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5437481Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5437633Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5437820Z "id": "REQ-HAZARD-ID-CHARSET", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5438219Z "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-21T09:42:01.5438440Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5438602Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5438754Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5438902Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5439136Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5439298Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5439455Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5439623Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5439773Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5439964Z "path": "docs/KNOWN-HAZARDS.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5440123Z "line": 133 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5440273Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5440428Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5440578Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5440739Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5440907Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5441068Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5441226Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5441421Z "path": "crates/spt-msg/src/ready.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5441574Z "line": 65 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5441726Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5441885Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5442080Z "path": "crates/spt-proto/src/id.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5442242Z "line": 17 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5442392Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5442549Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5442758Z "path": "crates/spt-store/src/shellinfo.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5442911Z "line": 146 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5443067Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5443221Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5443421Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5443592Z "line": 310 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5443745Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5443898Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5444099Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5444254Z "line": 441 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5444399Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5444551Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5444752Z "path": "crates/spt/src/api/worker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5444903Z "line": 32 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5445057Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5445207Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5445389Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5445550Z "line": 1283 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5445690Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5445846Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5446024Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5446189Z "line": 6161 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5446352Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5446499Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5446795Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5446959Z "line": 6443 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5447230Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5447381Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5447543Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5447698Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5447865Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5448032Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5448170Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5448333Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5448504Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5448666Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5448824Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5449080Z "path": "crates/spt-proto/src/id.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5449243Z "line": 94 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5449386Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5449553Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5449743Z "path": "crates/spt-proto/src/id.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5449901Z "line": 111 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5450068Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5450216Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5450410Z "path": "crates/spt-proto/src/id.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5450566Z "line": 124 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5450722Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5450871Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5451056Z "path": "crates/spt-proto/src/id.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5451209Z "line": 134 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5451356Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5451505Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5451691Z "path": "crates/spt-proto/src/id.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5451848Z "line": 144 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5452000Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5452148Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5452344Z "path": "crates/spt-proto/src/id.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5452496Z "line": 156 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5452654Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5452802Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5453029Z "path": "crates/spt-store/src/contextstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5453189Z "line": 746 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5453342Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5453499Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5453705Z "path": "crates/spt-store/src/shellinfo.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5453861Z "line": 309 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5454010Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5454166Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5454305Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5454463Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5454620Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5454772Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5454964Z "id": "REQ-HAZARD-INBOX-NO-DOUBLE", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5455187Z "title": "No double-delivery via legacy inbox (4.5)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5455359Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5455507Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5455674Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5455834Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5455998Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5456158Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5456321Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5456497Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5456640Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5456797Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5456974Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5457121Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5457270Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5457461Z "path": "crates/spt-msg/src/deliver.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5470378Z "line": 128 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5470563Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5470720Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5470888Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5471031Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5471203Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5471369Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5471525Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5471677Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5471842Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5472010Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5472171Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5472386Z "path": "crates/spt-msg/src/deliver.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5472743Z "line": 205 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5472897Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5473140Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5473282Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5473435Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5473583Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5473740Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5473936Z "id": "REQ-HAZARD-INFO-JSON-TORN-READ", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5474197Z "title": "State-file reads tolerate concurrent writes (1.2)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5474356Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5474515Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5474676Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5474815Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5474972Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5475125Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5475296Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5475454Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5475611Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5475769Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5475921Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5476084Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5476231Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5476437Z "path": "crates/spt-store/src/info.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5476607Z "line": 367 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5476761Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5476916Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5477113Z "path": "crates/spt-store/src/info.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5477279Z "line": 378 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5477413Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5477569Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5477761Z "path": "crates/spt-store/src/info.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5477923Z "line": 396 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5478071Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5478223Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5478376Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5478518Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5478691Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5478852Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5479081Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5479247Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5479407Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5479574Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5479717Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5479917Z "path": "crates/spt-store/src/info.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5480070Z "line": 420 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5480218Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5480380Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5480571Z "path": "crates/spt-store/src/info.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5480732Z "line": 441 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5480881Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5481028Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5481215Z "path": "crates/spt-store/src/info.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5481367Z "line": 811 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5481525Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5481672Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5481864Z "path": "crates/spt-store/src/info.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5482019Z "line": 822 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5482176Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5482336Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5482527Z "path": "crates/spt-store/src/info.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5482693Z "line": 835 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5482837Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5482989Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5483138Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5483284Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5483434Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5483581Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5483787Z "id": "REQ-HAZARD-INJECT-CONTROL-COEXIST", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5494890Z "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-21T09:42:01.5495313Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5495467Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5495621Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5495768Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5495922Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5496077Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5496236Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5496411Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5496570Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5496721Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5496876Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5497036Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5497195Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5497346Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5497562Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5497718Z "line": 357 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5497867Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5498018Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5498229Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5498389Z "line": 792 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5498543Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5498708Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5498900Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5499143Z "line": 1061 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5499295Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5499444Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5499596Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5499750Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5499915Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5500070Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5500220Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5500457Z "path": "crates/spt-daemon/tests/inject_control_wedge.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5500617Z "line": 256 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5500767Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5500917Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5501166Z "path": "crates/spt-daemon/tests/inject_control_wedge.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5501324Z "line": 382 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5501476Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5501619Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5501767Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5502025Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5502196Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5502359Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5502593Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5502802Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5502955Z "line": 2558 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5503111Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5503263Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5503414Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5503571Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5503719Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5503871Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5504085Z "id": "REQ-HAZARD-INPUT-ACK-BACKPRESSURE", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5514655Z "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-21T09:42:01.5514875Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5515022Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5515171Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5515332Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5515495Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5515637Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5515796Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5515948Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5516115Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5516276Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5516423Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5516602Z "path": "docs/KNOWN-HAZARDS.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5516756Z "line": 454 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5516912Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5517061Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5517207Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5517361Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5517536Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5517690Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5517837Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5518157Z "path": "crates/spt-daemon/src/attach.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5518310Z "line": 203 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5518558Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5518706Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5518912Z "path": "crates/spt-daemon/src/brain.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5519143Z "line": 487 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5519296Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5519447Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5519644Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5519810Z "line": 1862 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5519954Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5520110Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5520301Z "path": "crates/spt-daemon/src/msg.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5520454Z "line": 331 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5520598Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5520735Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5520884Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5521036Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5521204Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5521359Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5521536Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5521747Z "path": "crates/spt-daemon/tests/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5521896Z "line": 737 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5522052Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5522201Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5522410Z "path": "crates/spt-daemon/tests/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5522568Z "line": 854 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5522710Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5522864Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5523108Z "path": "crates/spt-daemon/tests/inject_control_wedge.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5523268Z "line": 544 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5523418Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5523559Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5523808Z "path": "crates/spt-daemon/tests/inject_control_wedge.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5523965Z "line": 1800 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5524118Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5524269Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5524519Z "path": "crates/spt-daemon/tests/input_ack_deadlock.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5524681Z "line": 266 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5524830Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5524986Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5525130Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5525282Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5525445Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5525607Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5525759Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5525950Z "path": "crates/spt-daemon/src/msg.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5526103Z "line": 985 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5526251Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5526403Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5526600Z "path": "crates/spt-daemon/src/msg.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5526760Z "line": 1019 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5526902Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5527054Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5527210Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5527359Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5527520Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5527668Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5527854Z "id": "REQ-HAZARD-INSTANT-UNDERFLOW", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5528745Z "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-21T09:42:01.5528904Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5533062Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5533270Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5533419Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5533576Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5533743Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5533910Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5534072Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5534229Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5534387Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5534559Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5534720Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5534871Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5535271Z "path": "crates/spt-daemon/src/pump/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5535432Z "line": 759 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5535681Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5535827Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5535981Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5536133Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5536305Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5536476Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5536629Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5536786Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5536935Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5537092Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5537245Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5537462Z "path": "crates/spt-daemon/src/pump/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5537618Z "line": 873 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5537775Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5537929Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5538080Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5538233Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5538390Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5538543Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5538778Z "id": "REQ-HAZARD-LIVEHOST-BOOT-LIVENESS-GATE", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5542409Z "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-21T09:42:01.5542574Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5542745Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5542901Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5543050Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5543196Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5543354Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5543502Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5543674Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5543831Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5543984Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5544141Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5544303Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5544451Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5544604Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5544829Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5544994Z "line": 705 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5545144Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5545290Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5545441Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5545598Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5545753Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5545917Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5546078Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5546297Z "path": "crates/spt/tests/livehost_bootgate_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5546470Z "line": 24 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5546617Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5546770Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5546918Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5547075Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5547251Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5547400Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5547556Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5547763Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5547923Z "line": 918 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5548066Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5548221Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5548373Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5548526Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5548683Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5548822Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5549103Z "id": "REQ-HAZARD-LIVEHOST-BOOT-RACE", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5554468Z "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-21T09:42:01.5554887Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5555040Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5555202Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5555345Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5555503Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5555660Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5555804Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5555978Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5556140Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5556290Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5556448Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5556619Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5556772Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5556924Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5557140Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5557301Z "line": 391 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5557468Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5557606Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5557821Z "path": "crates/spt-store/src/info.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5557979Z "line": 343 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5558130Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5558284Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5558459Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5558616Z "line": 1750 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5558771Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5558924Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5559176Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5559344Z "line": 3191 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5559496Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5559639Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5559796Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5559945Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5560116Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5560274Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5560431Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5560659Z "path": "crates/spt/tests/livehost_bootrace_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5560823Z "line": 353 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5560974Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5561128Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5561374Z "path": "crates/spt/tests/livehost_psyche_fail_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5561541Z "line": 23 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5561693Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5561856Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5562003Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5562166Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5562332Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5562504Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5562647Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5562848Z "path": "crates/spt-store/src/info.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5563009Z "line": 743 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5563158Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5563319Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5563501Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5563676Z "line": 7863 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5563945Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5564093Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5564255Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5564408Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5564660Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5564813Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5565024Z "id": "REQ-HAZARD-LIVEHOST-NONRESIDENT", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5569961Z "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-21T09:42:01.5570148Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5570295Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5570458Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5570610Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5570762Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5570910Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5571068Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5571238Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5571397Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5571543Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5571698Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5571863Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5572020Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5572173Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5572378Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5572539Z "line": 64 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5572698Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5572845Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5573051Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5573211Z "line": 78 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5573370Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5573526Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5573722Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5573879Z "line": 170 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5574033Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5574183Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5574378Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5574538Z "line": 185 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5574692Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5574838Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5575040Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5575196Z "line": 195 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5575340Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5575492Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5575693Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5575860Z "line": 205 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5576008Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5576170Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5576369Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5576524Z "line": 294 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5576684Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5576828Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5577041Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5577194Z "line": 308 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5577340Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5577487Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5577687Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5577955Z "line": 377 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5578107Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5578275Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5578565Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5578722Z "line": 437 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5578875Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5579119Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5579337Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5579496Z "line": 455 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5579641Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5579789Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5579939Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5580092Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5580263Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5580422Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5580578Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5580807Z "path": "crates/spt/tests/livehost_bootrace_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5580969Z "line": 45 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5581112Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5581265Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5581494Z "path": "crates/spt/tests/livehost_bootrace_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5581657Z "line": 354 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5581803Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5581953Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5582190Z "path": "crates/spt/tests/livehost_nonresident_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5582358Z "line": 31 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5582489Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5582647Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5582799Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5582938Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5583109Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5583268Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5583424Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5583634Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5583791Z "line": 727 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5583935Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5584086Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5584245Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5584396Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5584556Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5584706Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5584901Z "id": "REQ-HAZARD-LOCAL-API-AUTH", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5585267Z "title": "Every local `api` mutation authenticated to an endpoint/session (codex #13)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5585422Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5585586Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5585742Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5585896Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5586057Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5586210Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5586386Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5586539Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5586696Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5586849Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5587025Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5587174Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5587335Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5587526Z "path": "crates/spt/src/api/auth.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5587687Z "line": 14 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5587848Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5587999Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5588200Z "path": "crates/spt/src/api/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5588357Z "line": 566 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5588506Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5588653Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5588801Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5589030Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5589187Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5589350Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5589506Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5589669Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5589830Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5589989Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5590144Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5590330Z "path": "crates/spt/src/api/auth.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5590485Z "line": 130 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5590628Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5590781Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5591077Z "path": "crates/spt/src/api/auth.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5591239Z "line": 138 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5591471Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5591626Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5591810Z "path": "crates/spt/src/api/auth.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5591978Z "line": 146 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5592125Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5592270Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5592454Z "path": "crates/spt/src/api/auth.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5592617Z "line": 154 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5592759Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5592918Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5593106Z "path": "crates/spt/src/api/auth.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5593260Z "line": 162 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5593412Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5593565Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5593750Z "path": "crates/spt/src/api/auth.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5593903Z "line": 170 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5594055Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5594218Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5594365Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5594519Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5594670Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5594820Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5595004Z "id": "REQ-HAZARD-PAIR-RATE-LIMIT", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5596336Z "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-21T09:42:01.5596513Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5596670Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5596823Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5596956Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5597104Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5597256Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5597428Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5597590Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5597738Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5597905Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5598063Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5598232Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5598375Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5598622Z "path": "crates/spt-net/src/net/pairing/ratelimit.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5598793Z "line": 34 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5598937Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5599141Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5599294Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5599456Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5599614Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5599790Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5599938Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5600081Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5600249Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5600405Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5600554Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5600785Z "path": "crates/spt-net/src/net/pairing/ratelimit.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5600951Z "line": 188 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5601107Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5601256Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5601499Z "path": "crates/spt-net/src/net/pairing/ratelimit.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5601665Z "line": 200 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5601823Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5601971Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5602195Z "path": "crates/spt-net/src/net/pairing/ratelimit.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5602366Z "line": 211 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5602515Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5602671Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5602900Z "path": "crates/spt-net/src/net/pairing/ratelimit.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5603073Z "line": 253 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5603229Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5603383Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5603619Z "path": "crates/spt-net/src/net/pairing/ratelimit.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5603772Z "line": 277 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5603928Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5604234Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5604477Z "path": "crates/spt-net/src/net/pairing/ratelimit.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5604736Z "line": 300 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5604883Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5605031Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5605279Z "path": "crates/spt-net/src/net/pairing/ratelimit.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5605445Z "line": 316 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5605594Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5605751Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5605906Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5606059Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5606210Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5606358Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5606552Z "id": "REQ-HAZARD-PAIR-SEED-ROTATION", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5607388Z "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-21T09:42:01.5607560Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5607736Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5607884Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5608035Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5608194Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5608350Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5608514Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5608674Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5608831Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5609039Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5609201Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5609358Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5609517Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5609725Z "path": "crates/spt-store/src/subnet.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5609883Z "line": 29 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5610040Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5610193Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5610393Z "path": "crates/spt-store/src/subnet.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5610541Z "line": 174 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5610693Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5610851Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5611061Z "path": "crates/spt-store/src/subnet.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5611222Z "line": 194 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5611374Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5611530Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5611729Z "path": "crates/spt-store/src/subnet.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5611896Z "line": 222 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5612049Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5612202Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5612354Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5612502Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5612674Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5612826Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5612979Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5613136Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5613289Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5613456Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5613604Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5613808Z "path": "crates/spt-store/src/subnet.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5613967Z "line": 329 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5614127Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5614289Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5614489Z "path": "crates/spt-store/src/subnet.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5614657Z "line": 344 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5614804Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5614962Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5615151Z "path": "crates/spt-store/src/subnet.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5615315Z "line": 417 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5615462Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5615606Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5615805Z "path": "crates/spt-store/src/subnet.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5615959Z "line": 433 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5616115Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5616269Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5616476Z "path": "crates/spt-store/src/subnet.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5616643Z "line": 492 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5616789Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5616932Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5617243Z "path": "crates/spt-store/src/subnet.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5617408Z "line": 506 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5617652Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5617801Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5618004Z "path": "crates/spt-store/src/subnet.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5618168Z "line": 517 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5618319Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5618464Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5618662Z "path": "crates/spt-store/src/subnet.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5618821Z "line": 528 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5619026Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5619179Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5619334Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5619491Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5619632Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5619790Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5619994Z "id": "REQ-HAZARD-PAIR-TRANSCRIPT-BIND", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5620992Z "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-21T09:42:01.5621162Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5621307Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5621458Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5621607Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5621768Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5621924Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5622085Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5622251Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5622400Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5622561Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5622719Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5622885Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5623034Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5623254Z "path": "crates/spt-net/src/net/pairing/spake.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5623415Z "line": 27 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5623563Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5623720Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5623940Z "path": "crates/spt-net/src/net/pairing/spake.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5624106Z "line": 110 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5624260Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5624407Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5624626Z "path": "crates/spt-net/src/net/pairing/spake.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5624787Z "line": 153 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5624941Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5625092Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5625322Z "path": "crates/spt-net/src/net/pairing/spake.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5625484Z "line": 182 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5625641Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5625793Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5626036Z "path": "crates/spt-net/src/net/pairing/transcript.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5626204Z "line": 31 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5626360Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5626514Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5626762Z "path": "crates/spt-net/src/net/pairing/transcript.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5626932Z "line": 113 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5627084Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5627226Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5627474Z "path": "crates/spt-net/src/net/pairing/transcript.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5627639Z "line": 138 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5627784Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5627935Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5628084Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5628231Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5628399Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5628560Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5628699Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5628856Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5629109Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5629271Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5629424Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5629649Z "path": "crates/spt-net/src/net/pairing/spake.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5629809Z "line": 261 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5629961Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5630107Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5630432Z "path": "crates/spt-net/src/net/pairing/spake.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5630593Z "line": 276 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5630836Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5630980Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5631194Z "path": "crates/spt-net/src/net/pairing/spake.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5631360Z "line": 293 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5631508Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5631666Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5631881Z "path": "crates/spt-net/src/net/pairing/spake.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5632051Z "line": 310 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5632201Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5632356Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5632580Z "path": "crates/spt-net/src/net/pairing/spake.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5632731Z "line": 327 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5632888Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5633040Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5633260Z "path": "crates/spt-net/src/net/pairing/spake.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5633426Z "line": 366 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5633575Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5633741Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5633975Z "path": "crates/spt-net/src/net/pairing/transcript.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5634138Z "line": 179 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5634290Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5634448Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5634686Z "path": "crates/spt-net/src/net/pairing/transcript.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5634853Z "line": 194 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5635010Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5635163Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5635399Z "path": "crates/spt-net/src/net/pairing/transcript.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5635557Z "line": 204 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5635714Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5635868Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5636106Z "path": "crates/spt-net/src/net/pairing/transcript.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5636267Z "line": 259 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5636416Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5636572Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5636797Z "path": "crates/spt-net/src/net/pairing/transcript.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5636959Z "line": 269 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5637121Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5637269Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5637507Z "path": "crates/spt-net/src/net/pairing/transcript.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5637659Z "line": 283 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5637805Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5637947Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5638110Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5638266Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5638410Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5638567Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5638758Z "id": "REQ-HAZARD-PARENT-PID-PREFER", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5639144Z "title": "Prefer stable parent PID / broker handle over ephemeral PID (2.1)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5639302Z "requiredStages": [], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5639473Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5639636Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5639806Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5639979Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5640136Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5640299Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5640464Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5640625Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5640781Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5640925Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5641091Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5641240Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5641391Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5641550Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5641720Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5641879Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5642025Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5642179Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5642331Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5642480Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5642679Z "id": "REQ-HAZARD-PSYCHE-OUTBOUND-PROXY", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5643887Z "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-21T09:42:01.5644253Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5644407Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5644563Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5644713Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5644874Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5645027Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5645193Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5645362Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5645513Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5645671Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5645826Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5645984Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5646141Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5646356Z "path": "crates/spt-daemon/src/psyrelay.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5646522Z "line": 26 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5646680Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5646827Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5647038Z "path": "crates/spt-daemon/src/psyrelay.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5647204Z "line": 95 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5647362Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5647509Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5647719Z "path": "crates/spt-daemon/src/psyrelay.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5647877Z "line": 166 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5648029Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5648181Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5648393Z "path": "crates/spt-live/src/outbound.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5648551Z "line": 19 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5648698Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5648856Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5649122Z "path": "crates/spt-live/src/outbound.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5649290Z "line": 50 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5649442Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5649595Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5649781Z "path": "crates/spt-live/src/turn.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5649938Z "line": 18 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5650086Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5650243Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5650435Z "path": "crates/spt-live/src/turn.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5650586Z "line": 71 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5650749Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5650901Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5651101Z "path": "crates/spt-proto/src/event.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5651265Z "line": 87 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5651413Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5651570Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5651718Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5651871Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5652043Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5652200Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5652357Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5652509Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5652677Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5652833Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5652992Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5653211Z "path": "crates/spt-daemon/src/psyrelay.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5653369Z "line": 289 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5653529Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5653672Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5653869Z "path": "crates/spt-daemon/src/psyrelay.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5654033Z "line": 314 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5654174Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5654324Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5654527Z "path": "crates/spt-daemon/src/psyrelay.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5654695Z "line": 350 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5654837Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5654991Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5655191Z "path": "crates/spt-daemon/src/psyrelay.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5655358Z "line": 418 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5655510Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5655659Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5655869Z "path": "crates/spt-daemon/src/psyrelay.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5656169Z "line": 429 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5656330Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5656587Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5656796Z "path": "crates/spt-daemon/src/psyrelay.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5656964Z "line": 460 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5657111Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5657269Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5657474Z "path": "crates/spt-daemon/src/psyrelay.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5657641Z "line": 471 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5657789Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5657936Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5658147Z "path": "crates/spt-live/src/outbound.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5658308Z "line": 77 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5658462Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5658613Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5658813Z "path": "crates/spt-live/src/outbound.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5659058Z "line": 97 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5659212Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5659368Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5659568Z "path": "crates/spt-live/src/outbound.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5659731Z "line": 112 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5659883Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5660036Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5660245Z "path": "crates/spt-live/src/outbound.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5660399Z "line": 123 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5663605Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5663785Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5664023Z "path": "crates/spt-live/src/outbound.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5664179Z "line": 130 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5664340Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5664506Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5664730Z "path": "crates/spt-live/src/outbound.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5664898Z "line": 145 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5665050Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5665208Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5665407Z "path": "crates/spt-live/src/turn.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5665580Z "line": 115 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5665741Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5665894Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5666099Z "path": "crates/spt-live/src/turn.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5666252Z "line": 130 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5666409Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5666557Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5666763Z "path": "crates/spt-proto/src/event.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5666923Z "line": 428 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5667075Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5667229Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5667380Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5667529Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5667666Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5667815Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5668020Z "id": "REQ-HAZARD-PTY-INPUT-WRITER-WEDGE", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5677285Z "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-21T09:42:01.5677703Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5677859Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5678013Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5678160Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5678309Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5678461Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5678609Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5678776Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5678933Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5679147Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5679301Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5679466Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5679630Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5679771Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5679980Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5680140Z "line": 978 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5680298Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5680445Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5680646Z "path": "crates/spt-store/src/info.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5680807Z "line": 322 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5680956Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5681113Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5681266Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5681413Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5681581Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5681742Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5681891Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5682139Z "path": "crates/spt-daemon/tests/inject_control_wedge.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5682305Z "line": 1983 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5682454Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5682624Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5682771Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5682931Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5683088Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5683241Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5683403Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5683608Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5683776Z "line": 2602 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5683927Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5684081Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5684281Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5684443Z "line": 2666 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5684600Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5684749Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5684948Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5685106Z "line": 2721 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5685261Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5685418Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5685569Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5685723Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5685870Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5686028Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5686212Z "id": "REQ-HAZARD-PUMP-IPC-DEADLINE", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5687462Z "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-21T09:42:01.5687630Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5687888Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5688053Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5688195Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5688433Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5688592Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5688739Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5688902Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5689101Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5689269Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5689464Z "path": "docs/KNOWN-HAZARDS.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5689626Z "line": 374 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5689794Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5689946Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5690113Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5690265Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5690436Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5690596Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5690743Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5690944Z "path": "crates/spt-daemon/src/brain.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5691092Z "line": 200 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5691244Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5691402Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5691592Z "path": "crates/spt-daemon/src/brain.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5691755Z "line": 304 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5691912Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5692070Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5692264Z "path": "crates/spt-daemon/src/brain.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5692423Z "line": 562 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5692579Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5692733Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5692927Z "path": "crates/spt-daemon/src/brain.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5693081Z "line": 577 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5693241Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5693384Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5693581Z "path": "crates/spt-daemon/src/brain.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5693749Z "line": 1224 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5693906Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5694054Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5694269Z "path": "crates/spt-daemon/src/pump/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5694441Z "line": 443 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5694598Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5694750Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5694961Z "path": "crates/spt-daemon/src/pump/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5695122Z "line": 590 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5695271Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5695417Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5695624Z "path": "crates/spt-daemon/src/pump/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5695784Z "line": 731 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5695937Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5696087Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5696244Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5696406Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5696564Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5696730Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5696875Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5697026Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5697184Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5697350Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5697504Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5697698Z "path": "crates/spt-daemon/src/pump/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5697861Z "line": 1155 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5698004Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5698153Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5698380Z "path": "crates/spt-daemon/tests/pumpdeadline.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5698547Z "line": 30 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5698708Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5698866Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5699100Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5699247Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5699390Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5699543Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5699744Z "id": "REQ-HAZARD-RC-ATTACH-FAILFAST", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5704480Z "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-21T09:42:01.5704896Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5705047Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5705206Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5705353Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5705512Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5705668Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5705812Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5705992Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5706146Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5706311Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5706463Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5706632Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5706800Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5706952Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5707139Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5707295Z "line": 718 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5707444Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5707595Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5707778Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5707943Z "line": 887 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5708093Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5708249Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5708393Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5708544Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5708708Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5708869Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5709107Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5709316Z "path": "crates/spt-daemon/tests/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5709483Z "line": 420 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5709635Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5709789Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5709950Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5710098Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5710274Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5710427Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5710585Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5710770Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5710934Z "line": 1072 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5711094Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5711248Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5711428Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5711575Z "line": 1096 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5711730Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5711873Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5712031Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5712183Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5712336Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5712483Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5712689Z "id": "REQ-HAZARD-RC-ATTACH-ONLINE-RACE", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5718276Z "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-21T09:42:01.5718639Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5718795Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5719033Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5719186Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5719344Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5719496Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5719649Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5719814Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5719992Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5720138Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5720292Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5720462Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5720620Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5720768Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5720954Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5721125Z "line": 1417 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5721273Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5721421Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5721612Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5721774Z "line": 1441 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5721931Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5722078Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5722225Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5722385Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5722544Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5722700Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5722839Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5723063Z "path": "crates/spt/tests/dummy_harness_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5723225Z "line": 329 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5723368Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5723526Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5723673Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5723821Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5723973Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5724127Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5724279Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5724456Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5724617Z "line": 8169 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5724771Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5724916Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5725059Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5725214Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5725367Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5725511Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5725678Z "id": "REQ-HAZARD-RC-EOF", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5731439Z "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-21T09:42:01.5731824Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5731967Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5732130Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5732272Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5732431Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5732586Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5732757Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5732917Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5733075Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5733222Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5733380Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5733542Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5733691Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5733875Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5734033Z "line": 910 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5734190Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5734344Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5734495Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5734645Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5734810Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5734983Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5735125Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5735288Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5735448Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5735610Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5735766Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5735952Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5736104Z "line": 1112 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5736262Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5736409Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5736553Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5736705Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5736863Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5737000Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5737206Z "id": "REQ-HAZARD-RC-INPUT-KEY-ENCODING", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5744012Z "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-21T09:42:01.5744217Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5744378Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5744527Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5744679Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5744837Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5744994Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5745161Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5745317Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5745476Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5745637Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5745805Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5745961Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5746213Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5746406Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5746569Z "line": 264 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5746812Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5746959Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5747113Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5747265Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5747438Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5747594Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5747753Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5747908Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5748072Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5748237Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5748387Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5748575Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5748723Z "line": 1094 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5748878Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5749122Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5749293Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5749460Z "line": 1225 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5749622Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5749774Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5749946Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5750117Z "line": 1227 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5750275Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5750418Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5750566Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5750718Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5750861Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5751015Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5751210Z "id": "REQ-HAZARD-REGISTRY-CONCURRENT", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5751639Z "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-21T09:42:01.5751809Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5751968Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5752114Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5752273Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5752428Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5752583Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5752748Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5752902Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5753054Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5753241Z "path": "docs/KNOWN-HAZARDS.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5753401Z "line": 139 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5753551Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5753701Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5753859Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5754004Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5754176Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5754328Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5754476Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5754671Z "path": "crates/spt-store/src/db.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5754821Z "line": 29 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5754976Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5755130Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5755324Z "path": "crates/spt-store/src/db.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5755474Z "line": 67 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5755620Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5755774Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5755983Z "path": "crates/spt-store/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5756155Z "line": 101 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5756303Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5756456Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5756669Z "path": "crates/spt-store/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5756824Z "line": 30 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5756971Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5757130Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5757324Z "path": "crates/spt-store/src/spool.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5757472Z "line": 48 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5757625Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5757778Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5757935Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5758087Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5758259Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5758416Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5758569Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5758726Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5758889Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5759121Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5759381Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5759596Z "path": "crates/spt-store/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5759867Z "line": 162 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5760025Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5760172Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5760311Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5760467Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5760616Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5760777Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5760978Z "id": "REQ-HAZARD-REGISTRY-DIR-CREATE", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5761561Z "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-21T09:42:01.5761727Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5761885Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5762040Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5762189Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5762340Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5762504Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5762651Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5762823Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5762994Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5763147Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5763337Z "path": "docs/KNOWN-HAZARDS.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5763496Z "line": 151 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5763652Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5763805Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5763962Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5764120Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5764300Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5764466Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5764612Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5764823Z "path": "crates/spt-store/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5764974Z "line": 22 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5765127Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5765279Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5765432Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5765589Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5765752Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5765923Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5766071Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5766238Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5766396Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5766553Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5766711Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5766916Z "path": "crates/spt-store/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5767086Z "line": 298 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5767234Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5767394Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5767541Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5767695Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5767846Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5767989Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5768195Z "id": "REQ-HAZARD-REGISTRY-EPOCH-LEASE", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5768873Z "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-21T09:42:01.5769119Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5769272Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5769434Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5769582Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5769742Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5769909Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5770074Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5770242Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5770393Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5770590Z "path": "docs/KNOWN-HAZARDS.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5770742Z "line": 145 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5770895Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5771047Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5771195Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5771347Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5771510Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5771676Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5771824Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5772045Z "path": "crates/spt-daemon/src/pump/update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5772210Z "line": 160 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5772359Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5772510Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5772730Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5772901Z "line": 200 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5773168Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5773311Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5773621Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5773774Z "line": 298 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5773926Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5774070Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5774280Z "path": "crates/spt-store/src/epoch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5774450Z "line": 20 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5774604Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5774746Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5774897Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5775054Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5775205Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5775374Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5775530Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5775682Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5775849Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5776002Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5776164Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5776379Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5776532Z "line": 937 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5776689Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5776842Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5777065Z "path": "crates/spt-daemon/tests/replicate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5777223Z "line": 88 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5777380Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5777534Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5777750Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5777912Z "line": 851 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5778068Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5778226Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5778430Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5778598Z "line": 870 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5778750Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5778913Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5779203Z "path": "crates/spt-net/src/net/replicate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5779369Z "line": 279 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5779522Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5779670Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5779874Z "path": "crates/spt-store/src/epoch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5780034Z "line": 82 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5780175Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5780326Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5780530Z "path": "crates/spt-store/src/epoch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5780701Z "line": 99 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5780854Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5781011Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5781206Z "path": "crates/spt-store/src/epoch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5781365Z "line": 119 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5781521Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5781670Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5781822Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5781970Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5782132Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5782285Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5782489Z "id": "REQ-HAZARD-REGISTRY-GHOST-ROWS", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5784448Z "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-21T09:42:01.5784616Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5784782Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5784935Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5785096Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5785245Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5785391Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5785553Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5785718Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5785886Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5786037Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5786229Z "path": "docs/KNOWN-HAZARDS.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5786496Z "line": 157 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5786652Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5786806Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5787058Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5787215Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5787378Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5787535Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5787688Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5787911Z "path": "crates/spt-daemon/src/pump/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5788075Z "line": 137 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5788230Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5788387Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5788599Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5788763Z "line": 564 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5788918Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5789167Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5789397Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5789557Z "line": 571 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5789711Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5789867Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5790073Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5790235Z "line": 227 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5790388Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5790540Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5790689Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5790844Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5791025Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5791190Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5791348Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5791504Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5791676Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5791838Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5791991Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5792216Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5792378Z "line": 1622 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5792535Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5792683Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5792908Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5793059Z "line": 1680 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5793223Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5793374Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5793584Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5793739Z "line": 883 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5793893Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5794040Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5794193Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5794345Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5794504Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5794655Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5794861Z "id": "REQ-HAZARD-REGISTRY-STALE-CLEAN", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5795185Z "title": "Stale registry entries degrade to fallback, never hard-fail (4.3)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5795347Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5795495Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5795652Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5795810Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5795970Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5796127Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5796296Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5796460Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5796616Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5796775Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5796945Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5797103Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5797264Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5797466Z "path": "crates/spt-store/src/proc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5797623Z "line": 15 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5797775Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5797918Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5798128Z "path": "crates/spt-store/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5798277Z "line": 55 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5798438Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5798582Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5798795Z "path": "crates/spt-store/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5799027Z "line": 66 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5799178Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5799327Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5799642Z "path": "crates/spt-store/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5799807Z "line": 115 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5800047Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5800204Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5800409Z "path": "crates/spt-store/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5800562Z "line": 138 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5800714Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5800863Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5801023Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5801168Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5801352Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5801519Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5801664Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5801822Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5801989Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5802146Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5802299Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5802495Z "path": "crates/spt-store/src/proc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5802660Z "line": 363 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5802809Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5802966Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5803153Z "path": "crates/spt-store/src/proc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5803314Z "line": 369 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5803468Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5803624Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5803825Z "path": "crates/spt-store/src/proc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5803977Z "line": 383 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5804131Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5804281Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5804473Z "path": "crates/spt-store/src/proc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5804633Z "line": 392 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5804796Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5804953Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5805154Z "path": "crates/spt-store/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5805306Z "line": 195 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5805463Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5805616Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5805821Z "path": "crates/spt-store/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5805989Z "line": 208 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5806150Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5806294Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5806498Z "path": "crates/spt-store/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5806660Z "line": 271 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5806810Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5806953Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5807162Z "path": "crates/spt-store/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5810583Z "line": 290 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5810779Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5810941Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5811165Z "path": "crates/spt-store/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5811336Z "line": 319 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5811494Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5811641Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5811795Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5811945Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5812102Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5812253Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5812463Z "id": "REQ-HAZARD-RESTART-IDEMPOTENT", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5812901Z "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-21T09:42:01.5813083Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5813239Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5813393Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5813554Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5813713Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5813869Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5814023Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5814184Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5814348Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5814494Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5814648Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5814812Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5814970Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5815113Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5815319Z "path": "crates/spt-daemon/src/brain.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5815484Z "line": 474 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5815799Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5815948Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5816162Z "path": "crates/spt-daemon/src/brain.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5816429Z "line": 916 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5816578Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5816743Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5816949Z "path": "crates/spt-daemon/src/brain.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5817100Z "line": 961 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5817257Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5817408Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5817619Z "path": "crates/spt-daemon/src/brain.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5817780Z "line": 986 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5817928Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5818079Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5818286Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5818453Z "line": 1800 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5818610Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5818763Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5819053Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5819220Z "line": 2045 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5819383Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5819539Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5819741Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5819901Z "line": 2176 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5820053Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5820194Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5820404Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5820570Z "line": 2224 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5820720Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5820885Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5821072Z "path": "crates/spt-daemon/src/effect.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5821228Z "line": 46 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5821387Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5821539Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5821739Z "path": "crates/spt-daemon/src/effect.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5821891Z "line": 200 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5822045Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5822197Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5822397Z "path": "crates/spt-daemon/src/wan.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5822567Z "line": 132 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5822714Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5822875Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5823067Z "path": "crates/spt-store/src/spool.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5823232Z "line": 137 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5823381Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5823538Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5823743Z "path": "crates/spt-store/src/spool.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5823906Z "line": 183 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5824058Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5824201Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5824353Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5824501Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5824677Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5824831Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5824982Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5825203Z "path": "crates/spt-daemon/tests/idempotent.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5825363Z "line": 27 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5825525Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5825683Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5825898Z "path": "crates/spt-daemon/tests/netbroker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5826064Z "line": 148 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5826213Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5826359Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5826574Z "path": "crates/spt-daemon/tests/netstream.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5826741Z "line": 200 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5826898Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5827047Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5827204Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5827347Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5827514Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5827670Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5827827Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5828035Z "path": "crates/spt-daemon/src/effect.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5828174Z "line": 366 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5828441Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5828592Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5828897Z "path": "crates/spt-daemon/src/effect.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5829189Z "line": 398 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5829352Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5829513Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5829710Z "path": "crates/spt-daemon/src/effect.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5829875Z "line": 419 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5830029Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5830219Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5830423Z "path": "crates/spt-daemon/tests/attach.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5830580Z "line": 628 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5830741Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5830897Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5831097Z "path": "crates/spt-daemon/tests/wanmsg.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5831250Z "line": 289 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5831407Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5831560Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5831764Z "path": "crates/spt-daemon/tests/xfer.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5831933Z "line": 230 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5832075Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5832224Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5832423Z "path": "crates/spt-store/src/spool.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5832582Z "line": 526 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5832733Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5832892Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5833084Z "path": "crates/spt-store/src/spool.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5833246Z "line": 556 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5833392Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5833550Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5833707Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5833855Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5834017Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5834170Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5834379Z "id": "REQ-HAZARD-ROLLBACK-STATE-COMPAT", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5836933Z "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-21T09:42:01.5837111Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5837268Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5837426Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5837568Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5837726Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5837883Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5838037Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5838206Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5838368Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5838528Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5838720Z "path": "docs/KNOWN-HAZARDS.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5838890Z "line": 314 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5839115Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5839273Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5839439Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5839583Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5839759Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5839916Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5840064Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5840303Z "path": "crates/spt-daemon/src/rollback_compat.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5840459Z "line": 33 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5840613Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5840755Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5840988Z "path": "crates/spt-daemon/src/rollback_compat.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5841150Z "line": 39 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5841310Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5841462Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5841621Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5841781Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5841935Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5842106Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5842372Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5842521Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5842784Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5842950Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5843103Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5843317Z "path": "crates/spt-daemon/src/rollback_compat.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5843471Z "line": 95 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5843626Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5843774Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5843929Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5844082Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5844239Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5844387Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5844572Z "id": "REQ-HAZARD-ROSTER-GHOST", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5848177Z "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-21T09:42:01.5848362Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5848525Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5848672Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5848828Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5849059Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5849217Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5849388Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5849557Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5849708Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5849866Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5850041Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5850191Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5850356Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5850590Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5850758Z "line": 488 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5850910Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5851058Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5851220Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5851373Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5851544Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5851710Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5851852Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5852007Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5852171Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5852336Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5852490Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5852714Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5852880Z "line": 1466 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5853024Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5853186Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5853339Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5853500Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5853649Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5853810Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5854002Z "id": "REQ-HAZARD-SELF-ELEVATE", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5857211Z "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-21T09:42:01.5857506Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5857663Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5857807Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5858059Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5858212Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5858383Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5858541Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5858703Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5858856Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5859110Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5859270Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5859422Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5859615Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5859777Z "line": 3520 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5859962Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5860121Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5860306Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5860474Z "line": 3572 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5860630Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5860784Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5860960Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5861117Z "line": 3617 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5861274Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5861432Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5861638Z "path": "crates/spt/src/elevation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5861794Z "line": 92 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5861952Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5862118Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5862318Z "path": "crates/spt/src/elevation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5862482Z "line": 148 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5862644Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5862788Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5862984Z "path": "crates/spt/src/elevation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5863149Z "line": 192 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5863298Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5863450Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5863642Z "path": "crates/spt/src/elevation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5863807Z "line": 200 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5863971Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5864122Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5864323Z "path": "crates/spt/src/elevation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5864490Z "line": 211 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5864648Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5864803Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5864997Z "path": "crates/spt/src/elevation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5865149Z "line": 265 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5865298Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5865449Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5865641Z "path": "crates/spt/src/elevation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5865798Z "line": 279 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5865956Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5866108Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5866255Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5866398Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5866570Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5866742Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5866894Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5867057Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5867232Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5867392Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5867552Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5867752Z "path": "crates/spt/src/elevation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5867918Z "line": 419 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5868066Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5868223Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5868416Z "path": "crates/spt/src/elevation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5868581Z "line": 470 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5868740Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5868895Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5869182Z "path": "crates/spt/src/elevation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5869341Z "line": 499 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5869506Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5869660Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5869854Z "path": "crates/spt/src/elevation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5870006Z "line": 526 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5870161Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5870466Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5870609Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5870762Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5871006Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5871157Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5871358Z "id": "REQ-HAZARD-SINGLE-PATH-SOURCE", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5871682Z "title": "Single path/registry source of truth; no layout ambiguity (6.1)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5871849Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5872011Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5872164Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5872312Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5872474Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5872631Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5872806Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5872972Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5873123Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5873291Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5873452Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5873620Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5873767Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5873991Z "path": "crates/spt-store/src/contextstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5874150Z "line": 62 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5874311Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5874469Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5874687Z "path": "crates/spt-store/src/contextstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5874860Z "line": 71 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5875016Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5875198Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5875421Z "path": "crates/spt-store/src/contextstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5875581Z "line": 80 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5875733Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5875882Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5876106Z "path": "crates/spt-store/src/contextstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5876266Z "line": 88 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5876430Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5876577Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5876773Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5876934Z "line": 33 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5877112Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5877273Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5877478Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5877651Z "line": 65 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5877811Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5877961Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5878159Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5878321Z "line": 74 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5878478Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5878626Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5878826Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5879056Z "line": 93 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5879213Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5879370Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5879576Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5879738Z "line": 102 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5879882Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5880037Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5880235Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5880395Z "line": 111 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5880537Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5880702Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5880898Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5881064Z "line": 122 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5881208Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5881360Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5881561Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5881732Z "line": 140 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5881885Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5882042Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5882247Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5882399Z "line": 149 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5882561Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5882709Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5882900Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5883059Z "line": 158 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5883328Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5883476Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5883678Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5883931Z "line": 169 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5884085Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5884246Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5884447Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5884613Z "line": 177 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5884771Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5884919Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5885119Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5885271Z "line": 186 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5885429Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5885576Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5885782Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5885942Z "line": 195 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5886094Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5886250Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5886446Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5886623Z "line": 204 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5886771Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5886933Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5887142Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5887319Z "line": 216 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5887480Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5887629Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5887838Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5888000Z "line": 223 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5888153Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5888311Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5888507Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5888663Z "line": 232 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5888814Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5889043Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5889254Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5889410Z "line": 239 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5889578Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5889734Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5889940Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5890097Z "line": 306 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5890250Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5890403Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5890597Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5890766Z "line": 318 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5890917Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5891074Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5891267Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5891434Z "line": 405 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5891596Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5891749Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5891901Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5892054Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5892230Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5892384Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5892545Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5892698Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5892864Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5893032Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5893189Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5893399Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5893565Z "line": 487 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5893710Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5893870Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5894069Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5894229Z "line": 528 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5894378Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5894534Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5894731Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5894897Z "line": 541 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5895060Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5895207Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5895412Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5895575Z "line": 627 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5895722Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5895980Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5896141Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5896295Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5896560Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5896720Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5896906Z "id": "REQ-HAZARD-SOFT-CLEANUP", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5897236Z "title": "Soft-cleanup preserves state, removes only the ready marker (6.2)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5897401Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5897564Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5897721Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5897879Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5898040Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5898189Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5898355Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5898528Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5898680Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5898843Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5899081Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5899246Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5899398Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5899636Z "path": "crates/spt-msg/src/ready.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5899805Z "line": 175 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5899956Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5900120Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5900319Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5900481Z "line": 171 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5900629Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5900782Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5900934Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5901097Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5901273Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5901436Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5901591Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5901739Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5901908Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5902071Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5902223Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5902424Z "path": "crates/spt-msg/src/ready.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5902580Z "line": 297 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5902738Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5902895Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5903105Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5903263Z "line": 836 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5903416Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5903578Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5903786Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5903960Z "line": 849 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5904116Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5904275Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5904425Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5904587Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5904746Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5904890Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5905090Z "id": "REQ-HAZARD-STALE-INDEX-LOCK", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5905319Z "title": "Sweep stale lockfiles on daemon boot (1.3)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5905501Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5905657Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5905820Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5905977Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5906130Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5906296Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5906469Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5906673Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5906827Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5906991Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5907158Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5907318Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5907481Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5907685Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5907862Z "line": 116 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5908019Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5908177Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5908397Z "path": "crates/spt-store/src/branchstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5908553Z "line": 507 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5908712Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5908863Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5909092Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5909245Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5909417Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5909703Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5909859Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5910011Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5910293Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5910460Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5910608Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5910836Z "path": "crates/spt-store/src/branchstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5910999Z "line": 541 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5911146Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5911290Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5911442Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5911600Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5911751Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5911906Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5912123Z "id": "REQ-HAZARD-STALE-SIGNOFF-SENTINEL", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5912387Z "title": "Stale signoff sentinel does not kill a fresh start (3.2)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5912568Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5912726Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5912883Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5913031Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5913208Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5913369Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5913528Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5913717Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5913871Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5914041Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5914205Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5914366Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5914525Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5914744Z "path": "crates/spt-daemon/src/lifecycle.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5914919Z "line": 552 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5915066Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5915227Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5915426Z "path": "crates/spt-live/src/signoff.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5915579Z "line": 28 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5915736Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5915889Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5916047Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5916204Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5916371Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5916538Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5916705Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5916871Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5917034Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5917200Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5917349Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5917561Z "path": "crates/spt-live/src/signoff.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5917719Z "line": 229 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5917883Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5918041Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5918193Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5918346Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5918503Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5918661Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5918841Z "id": "REQ-HAZARD-STDIN-SESSION-ID", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5919166Z "title": "Stdin session_id precedence over env (2.2)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5919342Z "requiredStages": [], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5919495Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5919648Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5919810Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5919972Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5920124Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5920278Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5920451Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5920606Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5920752Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5920906Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5921072Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5921235Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5921391Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5921535Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5921701Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5921864Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5922016Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5922161Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5922311Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5922461Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5922654Z "id": "REQ-HAZARD-SUBPROCESS-TIMEOUT", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5922910Z "title": "Every harness/git subprocess has a timeout (5.3)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5923191Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5923333Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5923492Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5923730Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5923887Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5924050Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5924211Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5924374Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5924516Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5924674Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5924845Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5925004Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5925164Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5925361Z "path": "crates/spt-live/src/turn.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5925521Z "line": 19 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5925674Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5925838Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5926044Z "path": "crates/spt-runtime/src/runtime.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5926215Z "line": 463 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5926373Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5926529Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5926740Z "path": "crates/spt-runtime/src/runtime.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5926906Z "line": 499 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5927063Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5927216Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5927431Z "path": "crates/spt-runtime/src/runtime.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5927599Z "line": 547 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5927740Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5927890Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5928088Z "path": "crates/spt-store/src/gitrun.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5928255Z "line": 15 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5928400Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5928548Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5928758Z "path": "crates/spt-store/src/gitrun.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5928911Z "line": 48 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5929139Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5929302Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5929507Z "path": "crates/spt-store/src/gitrun.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5929673Z "line": 119 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5929827Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5929979Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5930171Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5930336Z "line": 3948 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5930490Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5930646Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5930805Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5935705Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5935883Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5936049Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5936220Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5936375Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5936561Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5936718Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5936890Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5937162Z "path": "crates/spt-runtime/src/runtime.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5937329Z "line": 765 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5937491Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5937643Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5937877Z "path": "crates/spt-store/src/gitrun.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5938048Z "line": 165 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5938197Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5938358Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5938559Z "path": "crates/spt-store/src/gitrun.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5938728Z "line": 175 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5938872Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5939104Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5939266Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5939404Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5939553Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5939699Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5939896Z "id": "REQ-HAZARD-SUDO-SECURE-PATH", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5941346Z "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-21T09:42:01.5941687Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5941849Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5942007Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5942259Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5942412Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5942574Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5942741Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5942903Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5943099Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5943257Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5943432Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5943591Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5943746Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5943946Z "path": "crates/spt/src/elevation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5944106Z "line": 192 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5944263Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5944416Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5944612Z "path": "crates/spt/src/elevation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5944768Z "line": 279 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5944917Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5945069Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5945222Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5945374Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5945546Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5945732Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5945880Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5946042Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5946209Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5946371Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5946534Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5946727Z "path": "crates/spt/src/elevation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5946897Z "line": 470 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5947049Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5947207Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5947388Z "path": "crates/spt/src/elevation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5947555Z "line": 526 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5947712Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5947860Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5948013Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5948165Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5948318Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5948475Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5948676Z "id": "REQ-HAZARD-TEMPLATE-ARGV-FILL", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5954440Z "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-21T09:42:01.5954628Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5954785Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5954938Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5955100Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5955252Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5955415Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5955567Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5955735Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5955896Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5956049Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5956207Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5956379Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5956708Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5956859Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5957098Z "path": "crates/spt-daemon/src/harnesshost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5957364Z "line": 116 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5957524Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5957672Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5957886Z "path": "crates/spt-daemon/src/shellhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5958039Z "line": 132 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5958191Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5958354Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5958563Z "path": "crates/spt-daemon/src/shellwake.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5958720Z "line": 434 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5958887Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5959106Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5959322Z "path": "crates/spt-runtime/src/runtime.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5959484Z "line": 139 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5959661Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5959840Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5960086Z "path": "crates/spt-runtime/src/runtime.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5960272Z "line": 326 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5960447Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5960621Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5960849Z "path": "crates/spt-runtime/src/runtime.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5961035Z "line": 555 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5961211Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5961396Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5961574Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5961754Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5961950Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5962133Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5962312Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5962570Z "path": "crates/spt/tests/livehost_nonresident_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5962764Z "line": 32 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5962932Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5963108Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5963284Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5963466Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5963641Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5963804Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5963960Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5964166Z "path": "crates/spt-runtime/src/runtime.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5964324Z "line": 625 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5964477Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5964624Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5964838Z "path": "crates/spt-runtime/src/runtime.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5964990Z "line": 646 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5965132Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5965287Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5965484Z "path": "crates/spt-runtime/src/runtime.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5965641Z "line": 662 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5965785Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5965941Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5966142Z "path": "crates/spt-runtime/src/runtime.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5966309Z "line": 680 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5966471Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5966634Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5966838Z "path": "crates/spt-runtime/src/runtime.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5967006Z "line": 704 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5967157Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5967311Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5967467Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5967621Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5967767Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5967919Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5968107Z "id": "REQ-HAZARD-UNC-PATH-STRIP", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5968374Z "title": "Strip Windows UNC prefix on serialized paths (5.4)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5968542Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5968699Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5968857Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5969080Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5969238Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5969385Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5969567Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5969724Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5969873Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5970034Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5970319Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5970491Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5970760Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5970961Z "path": "crates/spt-store/src/atomic.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5971123Z "line": 35 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5971280Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5971429Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5971566Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5971724Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5971890Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5972058Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5972205Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5972368Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5972534Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5972697Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5972858Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5973059Z "path": "crates/spt-store/src/atomic.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5973229Z "line": 220 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5973382Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5973567Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5973754Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5973935Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5974112Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5974283Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5974507Z "id": "REQ-HAZARD-UNHOST-PSYCHE-REAP", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5979325Z "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-21T09:42:01.5979551Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5979727Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5979907Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5980061Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5980212Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5980366Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5980517Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5980690Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5980851Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5981008Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5981158Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5981311Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5981464Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5981630Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5981854Z "path": "crates/spt-daemon/src/lifecycle.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5982013Z "line": 202 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5982164Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5982318Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5982517Z "path": "crates/spt-live/src/psyche.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5982670Z "line": 107 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5982832Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5982990Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5983180Z "path": "crates/spt-live/src/psyche.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5983338Z "line": 138 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5983485Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5983643Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5983841Z "path": "crates/spt-runtime/src/runtime.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5984014Z "line": 209 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5984171Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5984324Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5984534Z "path": "crates/spt-runtime/src/runtime.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5984815Z "line": 246 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5984977Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5985129Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5985429Z "path": "crates/spt-runtime/src/runtime.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5985597Z "line": 379 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5985739Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5985888Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5986044Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5986196Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5986365Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5986533Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5986689Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5986924Z "path": "crates/spt/tests/unhost_psyche_reap_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5987091Z "line": 17 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5987243Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5987401Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5987553Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5987705Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5987867Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5988020Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5988178Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5988384Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5988544Z "line": 982 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5988694Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5988854Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5989078Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5989223Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5989381Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5989532Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5989725Z "id": "REQ-HAZARD-UPDATE-ROLLBACK", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5990153Z "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-21T09:42:01.5990325Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5990491Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5990645Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5990801Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5990955Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5991106Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5991270Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5991439Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5991601Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5991756Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5991924Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5992085Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5992239Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5992452Z "path": "crates/spt-daemon/src/propagate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5992620Z "line": 405 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5992772Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5992925Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5993139Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5993301Z "line": 409 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5993454Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5993606Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5993827Z "path": "crates/spt-daemon/src/update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5993988Z "line": 156 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5994132Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5994287Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5994440Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5994602Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5994769Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5994931Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5995089Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5995251Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5995418Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5995580Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5995738Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5995947Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5996110Z "line": 865 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5996271Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5996420Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5996628Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5996789Z "line": 879 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5996944Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5997098Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5997307Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5997465Z "line": 898 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5997622Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5997775Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5998094Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5998261Z "line": 915 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5998499Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5998653Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5998881Z "path": "crates/spt-daemon/tests/propagate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5999109Z "line": 441 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5999273Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5999428Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5999581Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5999745Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.5999893Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6000041Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6000237Z "id": "REQ-HAZARD-VIEWER-CLOSE-DETACH", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6014604Z "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-21T09:42:01.6014836Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6014995Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6015151Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6015300Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6015570Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6015727Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6015890Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6016137Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6016304Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6016471Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6016614Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6016795Z "path": "CONTEXT.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6016953Z "line": 420 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6017100Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6017258Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6017448Z "path": "docs/KNOWN-HAZARDS.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6017620Z "line": 402 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6017776Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6017932Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6018093Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6018247Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6018423Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6018571Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6018727Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6018928Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6019186Z "line": 797 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6019338Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6019496Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6019706Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6019858Z "line": 822 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6020006Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6020158Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6020364Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6020535Z "line": 839 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6020681Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6020832Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6021033Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6021199Z "line": 854 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6021348Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6021528Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6021753Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6021939Z "line": 874 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6022124Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6022302Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6022529Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6022716Z "line": 964 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6022902Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6023082Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6023301Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6023489Z "line": 1016 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6023657Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6023813Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6024004Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6024171Z "line": 1075 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6024333Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6024486Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6024701Z "path": "crates/spt-daemon/src/deelevate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6024864Z "line": 527 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6025020Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6025174Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6025325Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6025494Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6025653Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6025818Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6025964Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6026188Z "path": "crates/spt/tests/job_escape_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6026349Z "line": 35 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6026513Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6026668Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6026874Z "path": "crates/spt/tests/job_escape_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6027036Z "line": 569 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6027189Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6027351Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6027560Z "path": "crates/spt/tests/job_escape_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6027719Z "line": 590 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6027879Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6028028Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6028189Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6028346Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6028520Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6028826Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6029069Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6029273Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6029540Z "line": 1202 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6029699Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6029850Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6030056Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6030223Z "line": 1246 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6030375Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6030528Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6030728Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6030891Z "line": 1260 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6031047Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6031203Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6031416Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6031564Z "line": 1278 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6031721Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6031874Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6032069Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6032237Z "line": 1302 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6032398Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6032547Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6032751Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6032914Z "line": 1529 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6033071Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6033233Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6033381Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6033539Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6033694Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6033847Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6034035Z "id": "REQ-HAZARD-VIEWER-ISOLATION", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6037238Z "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-21T09:42:01.6037416Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6037567Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6037716Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6037872Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6038031Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6038187Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6038360Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6038507Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6038666Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6038854Z "path": "docs/KNOWN-HAZARDS.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6039099Z "line": 381 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6039257Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6039419Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6039572Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6039729Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6039906Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6040063Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6040216Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6040410Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6040583Z "line": 143 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6040735Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6040884Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6041036Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6041189Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6041364Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6041523Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6041683Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6041892Z "path": "crates/spt-daemon/tests/attach.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6042043Z "line": 1042 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6042201Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6042343Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6042497Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6042768Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6042949Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6043126Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6043368Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6043578Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6043813Z "line": 2410 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6044042Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6044273Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6044505Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6044739Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6044896Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6045058Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6045345Z "id": "REQ-HAZARD-VIEWER-STARVE-UNDER-CONTROLLER-BACKPRESSURE", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6053381Z "title": "A SLOW controller must not starve a concurrent `rc --view` VIEWER. W1 (REQ-HAZARD-INJECT-CONTROL-COEXIST) moved the controller SOCKET WRITE off the drain thread onto controller_writer, but left the bounded HANDOFF (ControllerJob::deliver) as an INLINE try_send SLEEP-POLL on the drain (broker.rs:1450-1457 → deliver:669-685, up to CONTROLLER_WRITE_DEADLINE=5s). So when a controller drains slower than the PTY floods, its CONTROLLER_CHANNEL_DEPTH(4096) channel fills, deliver() polls inline, and the DRAIN THREAD is throttled to the controller's read rate → OutputLog::append's viewer fan-out (try_send) stops running → a concurrent VIEWER receives only the initial replay then nothing (root 'b4', warm forkpty: a_journaled c1=0/EVICT=0/got_output=FALSE; steady-state-near-full = no recovery; forkpty-only, floods harder than Windows ConPTY). The viewer-not-starved-by-a-busy-session property is legitimate (rc --view of a noisy session must show LIVE output). FIX: the controller becomes a SINGLE NON-BLOCKING try_send (like a viewer), done IN append() under the log lock; deliver()'s sleep-poll DELETED; the drain NEVER sleeps. ControllerSink gains a stateful last_ok deadline → a TRULY-stalled controller (continuous-Full past CONTROLLER_WRITE_DEADLINE) is evicted (bounded-wedge preserved); a slow-but-alive controller DROPS frames + falls behind the ring (resume-from-floor, the existing reconnect case). B2 GAPLESS-HANDOFF PRESERVED via a CONTIGUOUS delivered_through: controller_writer advances the cursor ONLY when the written seq == cursor (next expected); a gap from a drop FREEZES the cursor at last-contiguous so a re-attaching brain's resume_seq never skips a dropped chunk (a high-watermark advance past the gap would be a not-exactly-once resume = B2 violation, doyle's gate). (v0.13.0)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6053585Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6053748Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6053905Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6054067Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6054229Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6054391Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6054558Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6054730Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6054881Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6055037Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6055202Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6055357Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6055522Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6055733Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6055910Z "line": 358 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6056061Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6056220Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6056423Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6056582Z "line": 778 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6056734Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6056888Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6057044Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6057198Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6057378Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6057546Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6057696Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6057858Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6058030Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6058193Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6058349Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6058560Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6058869Z "line": 2470 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6059113Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6059360Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6059574Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6059733Z "line": 2531 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6059889Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6060046Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6060201Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6060358Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6060516Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6060663Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6060854Z "id": "REQ-HAZARD-WAN-ORIGIN-AUTH", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6062070Z "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-21T09:42:01.6062251Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6062413Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6062566Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6062724Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6062870Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6063027Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6063192Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6063354Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6063521Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6063673Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6063869Z "path": "docs/KNOWN-HAZARDS.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6064032Z "line": 366 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6064188Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6064336Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6064484Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6064642Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6064813Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6064980Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6065133Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6065346Z "path": "crates/spt-daemon/src/access.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6065503Z "line": 87 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6065658Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6065816Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6066030Z "path": "crates/spt-daemon/src/attach.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6066193Z "line": 105 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6066349Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6066508Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6066721Z "path": "crates/spt-daemon/src/dispatch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6066879Z "line": 55 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6067036Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6067189Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6067400Z "path": "crates/spt-daemon/src/linkhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6067560Z "line": 31 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6067710Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6067870Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6068082Z "path": "crates/spt-daemon/src/linkhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6068252Z "line": 446 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6068409Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6068566Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6068781Z "path": "crates/spt-daemon/src/notifsync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6069030Z "line": 95 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6069172Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6069324Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6069548Z "path": "crates/spt-daemon/src/propagate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6069706Z "line": 29 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6069858Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6070017Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6070235Z "path": "crates/spt-daemon/src/propagate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6070406Z "line": 104 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6070563Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6070710Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6070923Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6071095Z "line": 208 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6071247Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6071400Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6071610Z "path": "crates/spt-daemon/src/resthost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6071772Z "line": 28 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6071925Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6072187Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6072401Z "path": "crates/spt-daemon/src/resthost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6072668Z "line": 74 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6072826Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6072973Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6073194Z "path": "crates/spt-daemon/src/serveprobe.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6073359Z "line": 32 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6073502Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6073662Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6073867Z "path": "crates/spt-daemon/src/sync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6074028Z "line": 40 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6074182Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6074324Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6074530Z "path": "crates/spt-daemon/src/sync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6074686Z "line": 184 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6074845Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6074991Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6075188Z "path": "crates/spt-daemon/src/wan.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6075349Z "line": 61 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6075503Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6075659Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6075860Z "path": "crates/spt-daemon/src/wan.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6076025Z "line": 131 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6076186Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6076337Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6076543Z "path": "crates/spt-daemon/src/xfer.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6076700Z "line": 223 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6076858Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6077001Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6077205Z "path": "crates/spt-net/src/net/sync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6077373Z "line": 37 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6077520Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6077674Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6077878Z "path": "crates/spt-net/src/net/update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6078046Z "line": 38 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6078202Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6078361Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6078570Z "path": "crates/spt-net/src/net/wanmsg.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6078731Z "line": 36 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6078892Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6079126Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6079332Z "path": "crates/spt-net/src/net/xfer.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6079488Z "line": 40 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6079646Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6079793Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6079938Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6080089Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6080258Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6080423Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6080572Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6080723Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6080892Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6081052Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6081209Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6081416Z "path": "crates/spt-daemon/src/notifsync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6081589Z "line": 212 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6081745Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6081889Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6082117Z "path": "crates/spt-daemon/tests/notifsync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6082275Z "line": 136 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6082432Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6082590Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6082814Z "path": "crates/spt-daemon/tests/propagate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6082971Z "line": 685 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6083125Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6083281Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6083482Z "path": "crates/spt-daemon/tests/sync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6083643Z "line": 224 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6083792Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6083952Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6084170Z "path": "crates/spt-daemon/tests/wanmsg.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6084331Z "line": 206 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6084479Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6084818Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6085038Z "path": "crates/spt-net/src/net/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6085190Z "line": 112 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6090430Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6090654Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6090874Z "path": "crates/spt-net/src/net/sync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6091045Z "line": 157 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6091198Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6091355Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6091569Z "path": "crates/spt-net/src/net/update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6091735Z "line": 215 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6091891Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6092034Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6092244Z "path": "crates/spt-net/src/net/wanmsg.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6092401Z "line": 141 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6092563Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6092712Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6092911Z "path": "crates/spt-net/src/net/xfer.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6093092Z "line": 162 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6093245Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6093403Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6093555Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6093708Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6093865Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6094019Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6094237Z "id": "REQ-HAZARD-WIN-PTY-PROGRAM-RESOLVE", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6097060Z "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-21T09:42:01.6097250Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6097415Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6097574Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6097729Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6097883Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6098034Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6098193Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6098349Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6098527Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6098688Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6098832Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6099104Z "path": "docs/KNOWN-HAZARDS.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6099275Z "line": 250 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6099419Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6099579Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6099729Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6099885Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6100056Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6100223Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6100380Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6100580Z "path": "crates/spt-term/src/pty.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6100758Z "line": 135 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6100909Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6101068Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6101267Z "path": "crates/spt-term/src/pty.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6101425Z "line": 157 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6101572Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6101730Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6101886Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6102036Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6102186Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6102353Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6102503Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6102714Z "path": "crates/spt-term/tests/winspawn.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6102879Z "line": 15 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6103033Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6103190Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6103329Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6103485Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6103648Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6103982Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6104134Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6104353Z "path": "crates/spt-term/src/winprog.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6104612Z "line": 233 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6104768Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6104917Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6105072Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6105220Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6105371Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6105519Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6105728Z "id": "REQ-HAZARD-WINDOWS-PID-RECYCLE", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6105999Z "title": "Windows PID-recycling false positives guarded (5.1)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6106172Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6106328Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6106483Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6106634Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6106793Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6106953Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6107122Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6107302Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6107460Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6107629Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6107796Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6107965Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6108124Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6108333Z "path": "crates/spt-msg/src/deliver.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6108491Z "line": 95 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6108647Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6108801Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6109077Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6109243Z "line": 117 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6109406Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6109563Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6109721Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6109873Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6110046Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6110202Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6110351Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6110506Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6110669Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6110825Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6110974Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6111173Z "path": "crates/spt-msg/src/deliver.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6111337Z "line": 250 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6111493Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6111642Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6111841Z "path": "crates/spt-store/src/proc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6111999Z "line": 412 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6112141Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6112314Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6112500Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6112661Z "line": 611 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6112817Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6112970Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6113169Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6113326Z "line": 669 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6113488Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6113641Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6113793Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6113956Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6114113Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6114265Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6114461Z "id": "REQ-HAZARD-WMI-DAEMON-WINDOW", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6118152Z "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-21T09:42:01.6118436Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6118636Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6118917Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6119155Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6119313Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6119470Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6119628Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6119799Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6119952Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6120104Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6120258Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6120419Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6120587Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6120739Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6120953Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6121114Z "line": 925 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6121263Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6121423Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6121630Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6121796Z "line": 994 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6121944Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6122101Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6122254Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6122416Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6122578Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6122736Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6122884Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6123094Z "path": "crates/spt/tests/job_escape_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6123264Z "line": 187 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6123421Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6123581Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6123796Z "path": "crates/spt/tests/job_escape_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6123952Z "line": 348 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6124101Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6124257Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6124421Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6124577Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6124745Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6124906Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6125060Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6125283Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6125431Z "line": 1206 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6125588Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6125742Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6125937Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6126103Z "line": 8116 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6126254Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6126416Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6126571Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6126725Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6126881Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6127039Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6127230Z "id": "REQ-HAZARD-WORKER-PATH", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6127540Z "title": "Single source of truth for Worker/Psyche perch location (1.5)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6127716Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6127874Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6128031Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6128179Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6128340Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6128494Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6128669Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6128840Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6129067Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6129258Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6129453Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6129635Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6129821Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6130054Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6130240Z "line": 262 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6130426Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6130608Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6130828Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6131017Z "line": 307 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6131208Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6131390Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6131617Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6131775Z "line": 319 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6132041Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6132195Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6132351Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6132627Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6132795Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6132966Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6133119Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6133281Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6133453Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6133601Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6133763Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6133962Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6134127Z "line": 455 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6134279Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6134433Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6134628Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6134794Z "line": 499 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6134948Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6135090Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6135238Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6135395Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6135552Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6135705Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6135887Z "id": "REQ-HOST-RUN-1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6139538Z "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-21T09:42:01.6139728Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6139880Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6140056Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6140209Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6140371Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6140538Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6140696Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6140872Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6141030Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6141191Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6141345Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6141515Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6141684Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6141835Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6142055Z "path": "crates/spt-daemon/src/harnesshost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6142219Z "line": 30 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6142373Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6142530Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6142759Z "path": "crates/spt-daemon/src/harnesshost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6142921Z "line": 76 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6143074Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6143241Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6143459Z "path": "crates/spt-daemon/src/harnesshost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6143632Z "line": 181 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6143779Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6143938Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6144132Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6144281Z "line": 1266 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6144441Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6144589Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6144739Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6144897Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6145073Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6145241Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6145392Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6145603Z "path": "crates/spt-daemon/tests/attach.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6145764Z "line": 285 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6145917Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6146069Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6146227Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6146379Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6146661Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6146824Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6147072Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6147294Z "path": "crates/spt-daemon/src/harnesshost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6147460Z "line": 229 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6147611Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6147768Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6147982Z "path": "crates/spt-daemon/src/harnesshost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6148146Z "line": 296 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6148297Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6148446Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6148655Z "path": "crates/spt-daemon/src/harnesshost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6148813Z "line": 419 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6149042Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6149184Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6149339Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6149489Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6149649Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6149799Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6149970Z "id": "REQ-HOST-RUN-2", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6152625Z "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-21T09:42:01.6152798Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6152958Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6153118Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6153281Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6153428Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6153586Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6153743Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6153910Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6154063Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6154225Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6154382Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6154545Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6154707Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6154860Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6155077Z "path": "crates/spt-daemon/src/harnesshost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6155233Z "line": 182 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6155395Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6155548Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6155748Z "path": "crates/spt-term/src/pty.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6155895Z "line": 113 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6156048Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6156205Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6156363Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6156530Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6156692Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6156854Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6157007Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6157221Z "path": "crates/spt-daemon/tests/attach.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6157384Z "line": 572 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6157545Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6157708Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6157849Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6158030Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6158194Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6158363Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6158505Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6158725Z "path": "crates/spt-term/tests/surface.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6158891Z "line": 86 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6159134Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6159297Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6159444Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6159593Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6159739Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6159889Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6160063Z "id": "REQ-INFRA-1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6160364Z "title": "GitHub issue tracking for v1; tangled.org as migration target", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6160653Z "requiredStages": [], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6160814Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6161066Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6161220Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6161386Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6161545Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6161701Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6161854Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6162006Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6162169Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6162317Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6162494Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6162660Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6162809Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6162960Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6163123Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6163288Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6163441Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6163598Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6163746Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6163899Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6164071Z "id": "REQ-INST-1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6164337Z "title": "endpoint ID vs instance split (adapter-agnostic ID)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6164518Z "requiredStages": [], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6164671Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6164828Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6164986Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6165147Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6165300Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6165457Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6165628Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6165779Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6165930Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6166075Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6166240Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6166403Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6166555Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6166718Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6166884Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6167047Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6167209Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6167361Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6167514Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6167671Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6167838Z "id": "REQ-INST-10", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6168188Z "title": "Qualified addressing [subnet:]id[@node] + ambiguity forces qualification", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6168362Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6168523Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6168679Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6168841Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6169084Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6169247Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6169408Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6169571Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6169723Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6169876Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6170052Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6170205Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6170357Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6170563Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6170735Z "line": 648 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6170882Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6171043Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6171251Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6171403Z "line": 725 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6171556Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6171703Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6171899Z "path": "crates/spt-proto/src/addr.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6172057Z "line": 13 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6172209Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6172367Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6172562Z "path": "crates/spt-proto/src/addr.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6172739Z "line": 67 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6172891Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6173068Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6173253Z "path": "crates/spt/src/wansend.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6173407Z "line": 18 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6173563Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6173820Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6174010Z "path": "crates/spt/src/wansend.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6174258Z "line": 444 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6174416Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6174573Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6174730Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6174878Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6175036Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6175197Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6175351Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6175502Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6175675Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6175832Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6175985Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6176198Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6176363Z "line": 932 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6176515Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6176673Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6176882Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6177044Z "line": 1309 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6177193Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6177345Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6177551Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6177716Z "line": 1320 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6177865Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6178026Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6178232Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6178398Z "line": 1336 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6178556Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6178709Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6178922Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6179156Z "line": 1352 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6179310Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6179459Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6179663Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6179817Z "line": 1374 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6179973Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6180131Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6180336Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6180503Z "line": 1679 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6180655Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6180812Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6181004Z "path": "crates/spt-proto/src/addr.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6181175Z "line": 130 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6181333Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6181484Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6181689Z "path": "crates/spt-proto/src/addr.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6181844Z "line": 167 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6182002Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6182154Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6182350Z "path": "crates/spt-proto/src/addr.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6182507Z "line": 175 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6182660Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6182807Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6183003Z "path": "crates/spt-proto/src/addr.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6183174Z "line": 183 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6183327Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6183489Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6183689Z "path": "crates/spt/src/wansend.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6183842Z "line": 896 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6183995Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6184137Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6184291Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6184446Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6184595Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6184751Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6184919Z "id": "REQ-INST-11", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6185281Z "title": "spt rename rippled to all instances (collision-checked, 6.5-reconciled)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6185453Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6185619Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6185772Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6185934Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6186087Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6186240Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6186407Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6186682Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6186844Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6186999Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6187280Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6187442Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6187595Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6187806Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6187966Z "line": 514 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6188125Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6188276Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6188496Z "path": "crates/spt-store/src/contextstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6188658Z "line": 297 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6188806Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6189051Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6189259Z "path": "crates/spt-store/src/rename.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6189417Z "line": 59 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6189563Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6189725Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6189913Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6190076Z "line": 5291 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6190228Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6190386Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6190576Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6190724Z "line": 7137 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6190876Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6191025Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6191177Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6191335Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6191502Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6191659Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6191802Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6191956Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6192125Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6192278Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6192433Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6192667Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6192857Z "line": 1479 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6193043Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6193215Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6193458Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6193644Z "line": 1512 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6193801Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6193954Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6194170Z "path": "crates/spt-store/src/contextstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6194331Z "line": 527 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6194475Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6194626Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6194827Z "path": "crates/spt-store/src/rename.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6194997Z "line": 160 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6195145Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6195302Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6195494Z "path": "crates/spt-store/src/rename.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6195659Z "line": 190 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6195804Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6195955Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6196156Z "path": "crates/spt-store/src/rename.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6196322Z "line": 225 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6196480Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6196642Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6196833Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6197000Z "line": 7994 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6197152Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6197303Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6197455Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6197611Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6197760Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6197911Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6198074Z "id": "REQ-INST-12", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6198545Z "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-21T09:42:01.6198723Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6198870Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6199104Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6199262Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6199408Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6199573Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6199839Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6200006Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6200156Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6200388Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6200564Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6200712Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6200870Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6201084Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6201252Z "line": 566 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6201403Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6201562Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6201770Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6201923Z "line": 659 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6202081Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6202238Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6202454Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6202614Z "line": 739 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6202771Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6202926Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6203136Z "path": "crates/spt-store/src/subnet.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6203302Z "line": 96 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6203461Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6203607Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6203808Z "path": "crates/spt-store/src/subnet.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6203960Z "line": 269 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6204123Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6204265Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6204476Z "path": "crates/spt-store/src/visibility.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6204628Z "line": 148 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6204776Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6204929Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6205087Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6205248Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6205406Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6205571Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6205720Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6205877Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6206030Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6206201Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6206359Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6206568Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6206731Z "line": 1554 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6206882Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6207031Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6207231Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6207388Z "line": 1577 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6207546Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6207698Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6207907Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6208067Z "line": 1614 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6208229Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6208386Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6208587Z "path": "crates/spt-store/src/subnet.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6208744Z "line": 457 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6208897Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6209149Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6209359Z "path": "crates/spt-store/src/visibility.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6209526Z "line": 185 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6209693Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6209832Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6210040Z "path": "crates/spt-store/src/visibility.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6210189Z "line": 206 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6210346Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6210495Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6210712Z "path": "crates/spt-store/src/visibility.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6210878Z "line": 232 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6211029Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6211182Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6211329Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6211488Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6211629Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6211788Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6211958Z "id": "REQ-INST-13", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6212268Z "title": "Subnet-exclusive sync + per-endpoint subnet-membership list", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6212535Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6212690Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6212845Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6213085Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6213236Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6213393Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6213562Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6213725Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6217877Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6218121Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6218291Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6218462Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6218617Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6218822Z "path": "crates/spt-daemon/src/sync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6219066Z "line": 100 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6219218Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6219385Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6219604Z "path": "crates/spt-store/src/visibility.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6219777Z "line": 171 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6219933Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6220096Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6220248Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6220406Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6220587Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6220749Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6220902Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6221069Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6221229Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6221386Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6221541Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6221752Z "path": "crates/spt-store/src/visibility.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6221903Z "line": 261 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6222062Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6222213Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6222434Z "path": "crates/spt-store/src/visibility.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6222600Z "line": 279 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6222748Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6222910Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6223053Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6223216Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6223373Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6223531Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6223702Z "id": "REQ-INST-14", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6224324Z "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-21T09:42:01.6224489Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6224633Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6224790Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6224948Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6225109Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6225272Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6225419Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6225592Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6225754Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6225911Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6226092Z "path": "CONTEXT.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6226249Z "line": 588 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6226407Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6226555Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6226734Z "path": "docs/STORAGE.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6226903Z "line": 49 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6227063Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6227222Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6227363Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6227517Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6227683Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6227851Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6227998Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6228232Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6228400Z "line": 410 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6228551Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6228710Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6228908Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6229282Z "line": 367 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6229450Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6229611Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6229849Z "path": "crates/spt-store/src/info.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6230008Z "line": 293 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6230422Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6230579Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6230770Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6231032Z "line": 1577 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6231189Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6231347Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6231500Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6231648Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6231808Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6231979Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6232130Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6232284Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6232449Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6232613Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6232773Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6232984Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6233155Z "line": 1163 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6233304Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6233461Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6233675Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6233834Z "line": 944 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6233994Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6234149Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6234366Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6234523Z "line": 1205 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6234677Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6234836Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6235026Z "path": "crates/spt-store/src/info.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6235189Z "line": 659 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6235345Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6235499Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6235684Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6235842Z "line": 8070 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6235994Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6236147Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6236304Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6236457Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6236609Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6236758Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6236924Z "id": "REQ-INST-15", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6238058Z "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-21T09:42:01.6238224Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6238378Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6238529Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6238683Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6238839Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6239073Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6239221Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6239392Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6239568Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6239719Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6240006Z "path": "docs/adr/0010-immutable-home-subnet-fork-not-rehome.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6240161Z "line": 3 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6240315Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6240476Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6240620Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6240796Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6240954Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6241125Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6241282Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6241503Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6241664Z "line": 353 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6241818Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6241973Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6242166Z "path": "crates/spt-msg/src/ready.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6242336Z "line": 60 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6242493Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6242662Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6242901Z "path": "crates/spt-store/src/contextstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6243062Z "line": 368 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6243220Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6243372Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6243596Z "path": "crates/spt-store/src/contextstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6243892Z "line": 417 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6244040Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6244288Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6244488Z "path": "crates/spt-store/src/home.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6244651Z "line": 19 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6244803Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6244959Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6245162Z "path": "crates/spt-store/src/home.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6245314Z "line": 70 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6245477Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6245634Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6245834Z "path": "crates/spt-store/src/home.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6245997Z "line": 96 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6246149Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6246303Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6246497Z "path": "crates/spt-store/src/home.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6246655Z "line": 121 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6246807Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6246975Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6247183Z "path": "crates/spt-store/src/home.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6247346Z "line": 172 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6247498Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6247643Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6247850Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6248009Z "line": 178 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6248169Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6248327Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6248513Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6248686Z "line": 1469 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6248832Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6249070Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6249210Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6249381Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6249558Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6249724Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6249873Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6250024Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6250195Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6250355Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6250513Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6250741Z "path": "crates/spt-store/src/contextstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6250904Z "line": 577 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6251050Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6251194Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6251409Z "path": "crates/spt-store/src/contextstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6251562Z "line": 638 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6251714Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6251876Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6252068Z "path": "crates/spt-store/src/home.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6252224Z "line": 213 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6252373Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6252529Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6252726Z "path": "crates/spt-store/src/home.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6252891Z "line": 249 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6253058Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6253203Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6253404Z "path": "crates/spt-store/src/home.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6253556Z "line": 262 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6253718Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6253870Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6254061Z "path": "crates/spt-store/src/home.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6254218Z "line": 338 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6254367Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6254524Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6254719Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6254876Z "line": 690 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6255016Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6255173Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6255349Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6255504Z "line": 8007 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6255662Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6255812Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6255999Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6256170Z "line": 9837 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6256428Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6256581Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6256733Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6256991Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6257143Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6257296Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6257453Z "id": "REQ-INST-2", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6257662Z "title": "Per-node files, synced Psyche mind", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6257841Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6257991Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6258146Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6258296Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6258458Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6258611Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6258783Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6259034Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6259188Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6259344Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6259508Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6259674Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6259818Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6260037Z "path": "crates/spt-daemon/src/lifecycle.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6260203Z "line": 108 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6260356Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6260508Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6260703Z "path": "crates/spt-live/src/ingest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6260858Z "line": 28 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6261006Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6261163Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6261358Z "path": "crates/spt-live/src/ingest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6261521Z "line": 74 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6261674Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6261826Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6262017Z "path": "crates/spt-live/src/ingest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6262188Z "line": 96 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6262332Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6262493Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6262676Z "path": "crates/spt-live/src/resume.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6262831Z "line": 86 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6262981Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6263132Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6263334Z "path": "crates/spt-live/src/signoff.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6263498Z "line": 118 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6263646Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6263796Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6263950Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6264096Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6264265Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6264421Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6264575Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6264730Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6264889Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6265050Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6265200Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6265403Z "path": "crates/spt-live/src/ingest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6265562Z "line": 250 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6265713Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6265868Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6266069Z "path": "crates/spt-live/src/resume.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6266236Z "line": 280 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6266391Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6266540Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6266697Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6266841Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6266997Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6267151Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6267321Z "id": "REQ-INST-3", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6267570Z "title": "Dormant (warm) / suspended (cold) resting states", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6267737Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6267889Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6268038Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6268194Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6268343Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6268504Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6268648Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6268809Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6269057Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6269204Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6269424Z "path": "docs/DORMANCY-BUDGET.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6269686Z "line": 3 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6269838Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6269987Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6270234Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6270383Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6270553Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6270716Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6270863Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6271083Z "path": "crates/spt-daemon/src/attach.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6271244Z "line": 59 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6271400Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6271551Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6271761Z "path": "crates/spt-daemon/src/dispatch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6271928Z "line": 480 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6272076Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6272234Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6272442Z "path": "crates/spt-daemon/src/lifecycle.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6272611Z "line": 254 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6272767Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6272921Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6273135Z "path": "crates/spt-daemon/src/lifecycle.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6273287Z "line": 384 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6273445Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6273598Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6273803Z "path": "crates/spt-daemon/src/lifecycle.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6273964Z "line": 418 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6274116Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6274276Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6274476Z "path": "crates/spt-daemon/src/pump/sync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6274652Z "line": 74 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6274801Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6274953Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6275173Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6275329Z "line": 234 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6275488Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6275639Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6275863Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6276016Z "line": 396 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6276169Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6276331Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6276530Z "path": "crates/spt-daemon/src/resting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6276697Z "line": 45 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6276852Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6277009Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6277214Z "path": "crates/spt-daemon/src/resting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6277387Z "line": 114 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6277543Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6277697Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6277901Z "path": "crates/spt-daemon/src/resting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6278049Z "line": 152 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6278206Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6278359Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6278568Z "path": "crates/spt-daemon/src/resting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6278721Z "line": 168 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6278878Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6279107Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6279300Z "path": "crates/spt-daemon/src/resting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6279487Z "line": 178 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6279636Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6279793Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6279998Z "path": "crates/spt-daemon/src/resting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6280154Z "line": 210 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6280299Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6280451Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6280666Z "path": "crates/spt-daemon/src/resting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6280828Z "line": 287 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6280971Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6281118Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6281318Z "path": "crates/spt-daemon/src/resting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6281477Z "line": 311 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6281633Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6281785Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6281983Z "path": "crates/spt-daemon/src/resting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6282246Z "line": 389 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6282397Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6282627Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6282842Z "path": "crates/spt-daemon/src/resting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6282998Z "line": 438 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6283147Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6283308Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6283504Z "path": "crates/spt-daemon/tests/budget.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6283666Z "line": 37 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6283819Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6283971Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6284176Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6284330Z "line": 62 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6284482Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6284633Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6284836Z "path": "crates/spt-store/src/info.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6284993Z "line": 279 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6285156Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6285307Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6285499Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6285666Z "line": 1848 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6285819Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6285976Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6286128Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6286291Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6286451Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6286620Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6286776Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6286931Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6287100Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6287266Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6287412Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6287622Z "path": "crates/spt-daemon/src/config.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6287779Z "line": 360 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6287933Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6288084Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6288304Z "path": "crates/spt-daemon/src/lifecycle.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6288470Z "line": 837 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6288624Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6288776Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6289066Z "path": "crates/spt-daemon/src/lifecycle.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6289225Z "line": 894 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6289381Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6289540Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6289749Z "path": "crates/spt-daemon/src/pump/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6289907Z "line": 889 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6290066Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6290220Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6290419Z "path": "crates/spt-daemon/src/pump/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6290578Z "line": 1014 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6290734Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6290887Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6291117Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6291283Z "line": 1264 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6291437Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6291593Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6291803Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6291960Z "line": 1405 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6292109Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6292264Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6292468Z "path": "crates/spt-daemon/src/resting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6292623Z "line": 449 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6292778Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6292929Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6293135Z "path": "crates/spt-daemon/src/resting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6293291Z "line": 485 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6293450Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6293601Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6293797Z "path": "crates/spt-daemon/src/resting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6293955Z "line": 540 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6294112Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6294270Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6294469Z "path": "crates/spt-daemon/src/resting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6294765Z "line": 697 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6294918Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6295155Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6295364Z "path": "crates/spt-daemon/src/resting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6295524Z "line": 931 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6295682Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6295834Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6296036Z "path": "crates/spt-daemon/src/resting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6296192Z "line": 945 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6296345Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6296511Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6296722Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6296889Z "line": 1290 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6297046Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6297199Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6297398Z "path": "crates/spt-store/src/info.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6297566Z "line": 609 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6297722Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6297874Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6298072Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6298245Z "line": 8031 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6298396Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6298549Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6298701Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6298855Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6299117Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6299274Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6299456Z "id": "REQ-INST-4", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6299761Z "title": "active to dormant/suspended fires a transition echo commune", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6299932Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6300091Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6300252Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6300396Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6300560Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6300713Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6300880Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6301042Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6301194Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6301358Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6301523Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6301687Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6301829Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6302044Z "path": "crates/spt-daemon/src/lifecycle.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6302210Z "line": 385 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6302364Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6302515Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6302711Z "path": "crates/spt-daemon/src/resting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6302876Z "line": 202 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6303033Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6303179Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6303390Z "path": "crates/spt-daemon/src/resting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6303552Z "line": 234 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6303705Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6303861Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6304075Z "path": "crates/spt-daemon/src/resting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6304239Z "line": 274 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6304390Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6304544Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6304691Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6304854Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6305010Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6305183Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6305330Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6305474Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6305644Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6305805Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6305961Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6306171Z "path": "crates/spt-daemon/src/lifecycle.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6306337Z "line": 889 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6306491Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6306642Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6306834Z "path": "crates/spt-daemon/src/resting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6306991Z "line": 561 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6307144Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6307301Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6307615Z "path": "crates/spt-daemon/src/resting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6307778Z "line": 668 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6308017Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6308169Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6308372Z "path": "crates/spt-daemon/src/resting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6308537Z "line": 750 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6308685Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6308843Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6309086Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6309237Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6309396Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6309548Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6309706Z "id": "REQ-INST-5", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6309997Z "title": "Two-tier context sync (live to all, project to same-project)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6310173Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6310326Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6310473Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6310636Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6310782Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6310946Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6311097Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6311268Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6311435Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6311583Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6311750Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6311908Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6312060Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6312213Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6312436Z "path": "crates/spt-daemon/src/pump/sync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6312595Z "line": 85 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6312737Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6312886Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6313080Z "path": "crates/spt-daemon/src/sync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6313244Z "line": 68 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6313394Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6313551Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6313753Z "path": "crates/spt-daemon/src/sync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6313902Z "line": 99 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6314064Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6314207Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6314416Z "path": "crates/spt-daemon/src/sync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6314579Z "line": 183 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6314736Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6314894Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6315075Z "path": "crates/spt-daemon/src/sync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6315247Z "line": 314 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6315400Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6315556Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6315705Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6315861Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6316044Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6316199Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6316361Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6316583Z "path": "crates/spt-daemon/tests/dispatch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6316745Z "line": 156 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6316897Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6317056Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6317264Z "path": "crates/spt-daemon/tests/pump.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6317432Z "line": 145 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6317584Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6317737Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6317942Z "path": "crates/spt-daemon/tests/twohost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6318094Z "line": 707 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6318257Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6318409Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6318615Z "path": "crates/spt-daemon/tests/twohost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6318790Z "line": 1069 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6319027Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6319187Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6319341Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6319507Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6319675Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6319831Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6319985Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6320180Z "path": "crates/spt-daemon/src/sync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6320332Z "line": 552 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6320586Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6320733Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6320934Z "path": "crates/spt-daemon/src/sync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6321178Z "line": 595 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6321329Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6321483Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6321695Z "path": "crates/spt-daemon/tests/sync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6321857Z "line": 219 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6322009Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6322167Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6322320Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6322463Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6322616Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6322768Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6322925Z "id": "REQ-INST-6", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6323249Z "title": "Deferred messages not delivered to dormant/suspended instances", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6323427Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6323578Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6323737Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6323883Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6324030Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6324186Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6324342Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6324511Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6324662Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6324820Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6324991Z "path": "docs/DEFERRED.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6325159Z "line": 13 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6325301Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6325454Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6325611Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6325754Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6325926Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6326083Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6326241Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6326445Z "path": "crates/spt-daemon/src/dispatch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6326604Z "line": 391 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6326750Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6326897Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6327105Z "path": "crates/spt-daemon/src/resthost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6327267Z "line": 27 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6327424Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6327582Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6327777Z "path": "crates/spt-daemon/src/resthost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6327941Z "line": 73 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6328091Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6328250Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6328445Z "path": "crates/spt-daemon/src/resthost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6328617Z "line": 182 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6328769Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6328927Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6329200Z "path": "crates/spt-daemon/src/resting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6329369Z "line": 426 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6329526Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6329677Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6329882Z "path": "crates/spt-net/src/net/rest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6333706Z "line": 31 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6333929Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6334105Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6334330Z "path": "crates/spt/src/api/delivery.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6334505Z "line": 202 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6334657Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6334812Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6335023Z "path": "crates/spt/src/api/worker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6335184Z "line": 83 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6335347Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6335498Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6335694Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6335847Z "line": 1849 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6336004Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6336152Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6336352Z "path": "crates/spt/src/wansend.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6336530Z "line": 179 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6336685Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6336845Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6337039Z "path": "crates/spt/src/wansend.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6337343Z "line": 215 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6337501Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6337642Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6337914Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6338061Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6338233Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6338390Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6338547Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6338767Z "path": "crates/spt-daemon/tests/twohost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6338929Z "line": 721 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6339191Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6339334Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6339596Z "path": "crates/spt-daemon/tests/twohost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6339765Z "line": 1114 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6339920Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6340072Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6340261Z "path": "crates/spt/src/wansend.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6340432Z "line": 726 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6340584Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6340743Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6340889Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6341048Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6341223Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6341377Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6341533Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6341729Z "path": "crates/spt-daemon/src/dispatch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6341896Z "line": 661 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6342035Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6342187Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6342401Z "path": "crates/spt-daemon/src/resting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6342564Z "line": 899 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6342716Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6342867Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6343073Z "path": "crates/spt-net/src/net/rest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6343235Z "line": 66 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6343388Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6343540Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6343736Z "path": "crates/spt/src/api/delivery.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6343898Z "line": 297 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6344050Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6344213Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6344408Z "path": "crates/spt/src/api/worker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6344566Z "line": 203 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6344727Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6344881Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6345032Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6345189Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6345344Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6345492Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6345654Z "id": "REQ-INST-7", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6345903Z "title": "Subnet registry + bare-id resolution policy", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6346068Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6346231Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6346383Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6346541Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6346692Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6346856Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6347007Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6347185Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6347346Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6347495Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6347656Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6347820Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6347979Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6348141Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6348344Z "path": "crates/spt-daemon/src/dispatch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6348512Z "line": 436 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6348663Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6348822Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6349108Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6349264Z "line": 27 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6349437Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6349584Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6349794Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6349947Z "line": 207 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6350094Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6350247Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6350565Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6350731Z "line": 344 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6350973Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6351130Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6351341Z "path": "crates/spt-net/src/net/ndjson.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6351493Z "line": 59 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6351646Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6351788Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6352008Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6352160Z "line": 41 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6352318Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6352470Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6352680Z "path": "crates/spt-net/src/net/replicate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6352848Z "line": 27 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6352999Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6353149Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6353361Z "path": "crates/spt-net/src/net/replicate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6353528Z "line": 119 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6353676Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6353833Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6354052Z "path": "crates/spt-net/src/net/replicate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6354206Z "line": 134 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6354348Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6354502Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6354710Z "path": "crates/spt-store/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6354854Z "line": 139 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6355006Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6355159Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6355302Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6355451Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6355615Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6355778Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6355923Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6356139Z "path": "crates/spt-daemon/tests/pump.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6356299Z "line": 145 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6356448Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6356600Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6356801Z "path": "crates/spt-daemon/tests/twohost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6356967Z "line": 665 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6357125Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6357277Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6357492Z "path": "crates/spt-daemon/tests/twohost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6357645Z "line": 964 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6357802Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6357950Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6358111Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6358265Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6358436Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6358597Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6358748Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6359029Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6359190Z "line": 1134 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6359349Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6359500Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6359721Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6359882Z "line": 1521 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6360030Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6360182Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6360397Z "path": "crates/spt-daemon/tests/replicate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6360555Z "line": 84 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6360706Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6360856Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6361068Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6361216Z "line": 812 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6361381Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6361529Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6361738Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6361901Z "line": 823 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6362043Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6362197Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6362401Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6362554Z "line": 838 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6362817Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6362973Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6363179Z "path": "crates/spt-net/src/net/replicate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6363432Z "line": 166 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6363588Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6363733Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6363945Z "path": "crates/spt-net/src/net/replicate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6364108Z "line": 181 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6364264Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6364423Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6364631Z "path": "crates/spt-net/src/net/replicate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6364794Z "line": 214 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6364946Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6365090Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6365237Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6365386Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6365542Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6365682Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6365842Z "id": "REQ-INST-8", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6366095Z "title": "Remote-control mode distinct from local operation", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6366276Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6366427Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6366588Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6366751Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6366898Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6367056Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6367207Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6367380Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6367537Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6367695Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6367847Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6368019Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6368176Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6368319Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6368515Z "path": "crates/spt-daemon/src/attach.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6368671Z "line": 104 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6368830Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6369043Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6369243Z "path": "crates/spt-daemon/src/attach.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6369412Z "line": 351 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6369561Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6369712Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6369923Z "path": "crates/spt-daemon/src/attach.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6370079Z "line": 391 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6370233Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6370389Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6370595Z "path": "crates/spt-net/src/net/attach.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6370752Z "line": 62 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6370910Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6371058Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6371206Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6371368Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6371535Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6371695Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6371847Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6372070Z "path": "crates/spt-daemon/tests/dispatch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6372223Z "line": 415 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6372380Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6372538Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6372738Z "path": "crates/spt-daemon/tests/twohost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6372908Z "line": 1028 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6373062Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6373219Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6373368Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6373520Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6373692Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6373853Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6374007Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6374210Z "path": "crates/spt-daemon/tests/attach.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6374374Z "line": 366 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6374524Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6374682Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6374905Z "path": "crates/spt-daemon/tests/attach.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6375054Z "line": 633 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6375210Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6375359Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6375559Z "path": "crates/spt-net/src/net/attach.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6375826Z "line": 116 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6375979Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6376223Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6376422Z "path": "crates/spt-net/src/net/attach.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6376576Z "line": 160 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6376722Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6376879Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6377029Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6377181Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6377325Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6377477Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6377640Z "id": "REQ-INST-9", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6377950Z "title": "Multi-subnet membership (same-user N subnets; cross-user seam)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6378126Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6378274Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6378426Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6378588Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6378731Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6378879Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6379129Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6379299Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6379448Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6379627Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6379793Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6379939Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6380097Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6380301Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6380464Z "line": 449 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6380616Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6380765Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6380912Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6381065Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6381231Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6381380Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6381536Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6381686Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6381846Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6382010Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6382151Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6382360Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6382524Z "line": 1397 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6382683Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6382834Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6383040Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6383202Z "line": 1406 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6383346Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6383502Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6383703Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6383869Z "line": 1422 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6384022Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6384170Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6384379Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6384539Z "line": 1434 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6384685Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6384839Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6385046Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6385204Z "line": 1454 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6385356Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6385514Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6385667Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6385819Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6385972Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6386124Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6386291Z "id": "REQ-INSTALL-1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6386610Z "title": "Two install paths; signed one-line script; OS-service registration", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6386774Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6386924Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6387083Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6387230Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6387391Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6387538Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6387688Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6387862Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6388018Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6388171Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6388337Z "path": "CONTEXT.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6388505Z "line": 754 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6388758Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6388905Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6389148Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6389416Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6389577Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6389736Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6389892Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6390088Z "path": "installer/install.ps1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6390248Z "line": 57 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6390410Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6390556Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6390748Z "path": "installer/install.sh", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6390904Z "line": 52 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6391058Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6391219Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6391367Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6391529Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6391682Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6391848Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6391992Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6392212Z "path": "crates/spt/tests/oneliner_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6392382Z "line": 21 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6392527Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6392678Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6392825Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6392981Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6393152Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6393315Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6393467Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6393610Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6393762Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6393910Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6394086Z "id": "REQ-INSTALL-10", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6396137Z "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-21T09:42:01.6396321Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6396479Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6396636Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6396785Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6396941Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6397109Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6397280Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6397443Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6397600Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6397748Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6397918Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6398084Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6398240Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6398436Z "path": "installer/install.ps1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6398588Z "line": 191 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6398736Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6398888Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6399117Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6399266Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6399442Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6399619Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6399775Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6399929Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6400099Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6400272Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6400414Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6400634Z "path": "crates/spt/tests/oneliner_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6400799Z "line": 211 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6400956Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6401107Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6401251Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6401398Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6401542Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6401698Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6401876Z "id": "REQ-INSTALL-11", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6404527Z "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-21T09:42:01.6404890Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6405044Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6405205Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6405358Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6405509Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6405668Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6405814Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6405983Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6406143Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6406300Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6406472Z "path": "CONTEXT.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6406625Z "line": 138 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6406782Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6406930Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6407125Z "path": "docs/MANIFEST.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6407279Z "line": 82 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6407435Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6407598Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6407745Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6407908Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6408078Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6408242Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6408383Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6408597Z "path": "crates/spt-daemon/src/digest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6408762Z "line": 223 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6408925Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6409167Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6409386Z "path": "crates/spt-daemon/src/lifecycle.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6409554Z "line": 99 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6409710Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6409864Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6410078Z "path": "crates/spt-daemon/src/lifecycle.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6410236Z "line": 117 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6410397Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6410546Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6410756Z "path": "crates/spt-daemon/src/livehost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6410917Z "line": 332 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6411056Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6411213Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6411407Z "path": "crates/spt-live/src/digest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6411586Z "line": 88 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6411739Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6411953Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6412163Z "path": "crates/spt-live/src/digest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6475215Z "line": 104 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6475486Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6475700Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6476039Z "path": "crates/spt-runtime/src/runtime.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6476263Z "line": 297 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6476482Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6476698Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6477032Z "path": "crates/spt-runtime/src/runtime.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6477258Z "line": 332 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6477471Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6477686Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6477976Z "path": "crates/spt-runtime/src/runtime.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6478195Z "line": 523 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6478411Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6478659Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6479073Z "path": "crates/spt-runtime/src/runtime.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6479298Z "line": 546 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6479507Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6479716Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6480026Z "path": "crates/spt-runtime/src/runtime.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6480279Z "line": 561 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6480483Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6481432Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6481718Z "path": "crates/spt/src/api/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6481933Z "line": 492 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6482395Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6482584Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6482769Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6483074Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6483321Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6483499Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6483650Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6483804Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6483965Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6484138Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6484280Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6484518Z "path": "crates/spt-runtime/src/runtime.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6484715Z "line": 799 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6484881Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6485030Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6485266Z "path": "crates/spt-runtime/src/runtime.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6485433Z "line": 811 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6485598Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6485751Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6485980Z "path": "crates/spt-runtime/src/runtime.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6486151Z "line": 820 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6486319Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6486471Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6486638Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6486795Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6486967Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6487119Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6487306Z "id": "REQ-INSTALL-12", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6491944Z "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-21T09:42:01.6492207Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6492413Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6492617Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6492822Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6493016Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6493215Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6493425Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6493629Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6495470Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6495783Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6495983Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6496225Z "path": "CONTEXT.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6496420Z "line": 185 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6496644Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6496869Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6497082Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6497297Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6497518Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6497751Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6497951Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6498233Z "path": "crates/spt-runtime/src/resolve.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6498451Z "line": 27 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6498677Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6498902Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6499268Z "path": "crates/spt-runtime/src/resolve.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6499502Z "line": 223 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6499717Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6499945Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6500203Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6500442Z "line": 5677 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6500656Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6500885Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6501119Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6501356Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6501786Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6502029Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6502276Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6502706Z "path": "crates/spt/tests/live_resolve_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6502954Z "line": 19 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6503191Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6503425Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6503704Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6504004Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6504319Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6504624Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6504905Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6505267Z "path": "crates/spt-runtime/src/resolve.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6505568Z "line": 395 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6505869Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6506165Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6506520Z "path": "crates/spt-runtime/src/resolve.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6506823Z "line": 421 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6507119Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6507430Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6507792Z "path": "crates/spt-runtime/src/resolve.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6508111Z "line": 440 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6508398Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6508684Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6509106Z "path": "crates/spt-runtime/src/resolve.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6509400Z "line": 475 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6509696Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6509991Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6510339Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6510664Z "line": 8665 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6510969Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6511294Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6511599Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6511916Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6512216Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6512527Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6512846Z "id": "REQ-INSTALL-2", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6513247Z "title": "Marketplace-repackaging-friendly install", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6513599Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6513905Z "doc" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6514208Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6514526Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6514831Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6515132Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6515442Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6515747Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6516067Z "path": "CONTEXT.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6516382Z "line": 755 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6516682Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6516985Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6517278Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6517583Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6517893Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6518194Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6518480Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6518757Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6519148Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6519447Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6519740Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6520037Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6520327Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6520623Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6520899Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6521186Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6521466Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6521757Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6522057Z "id": "REQ-INSTALL-3", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6522443Z "title": "Idempotent + interactive-optional first run", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6522742Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6523024Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6523315Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6523592Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6523868Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6524155Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6524437Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6524726Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6525000Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6525280Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6525567Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6525848Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6526239Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6526554Z "path": "installer/install.ps1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6526937Z "line": 100 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6527213Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6527497Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6527809Z "path": "installer/install.ps1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6528096Z "line": 111 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6528373Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6528640Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6528940Z "path": "installer/install.sh", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6529297Z "line": 79 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6529565Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6529833Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6530107Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6530371Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6530658Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6530944Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6531211Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6531545Z "path": "crates/spt/tests/oneliner_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6531836Z "line": 167 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6532113Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6532385Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6532657Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6532936Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6533222Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6533509Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6533775Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6534048Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6534329Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6534596Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6534896Z "id": "REQ-INSTALL-4", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6536023Z "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-21T09:42:01.6536323Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6536605Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6536877Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6537153Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6537429Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6537701Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6537977Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6538266Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6538542Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6538815Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6539162Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6539439Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6543749Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6544158Z "path": "crates/spt-daemon/src/adapter_update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6544435Z "line": 165 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6544713Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6544975Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6545313Z "path": "crates/spt-runtime/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6545585Z "line": 29 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6545860Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6546125Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6546464Z "path": "crates/spt-runtime/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6546744Z "line": 288 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6547016Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6547274Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6547589Z "path": "crates/spt-runtime/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6547865Z "line": 356 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6548110Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6548372Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6548689Z "path": "crates/spt-runtime/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6549040Z "line": 386 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6549301Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6549549Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6549869Z "path": "crates/spt-runtime/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6550137Z "line": 434 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6550385Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6550643Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6550929Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6551203Z "line": 5396 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6551454Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6551703Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6552097Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6552360Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6552632Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6552999Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6553252Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6553510Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6553787Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6554056Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6554314Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6554657Z "path": "crates/spt-daemon/src/adapter_update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6554920Z "line": 375 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6555177Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6555440Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6555765Z "path": "crates/spt-runtime/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6556026Z "line": 808 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6556292Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6556547Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6556867Z "path": "crates/spt-runtime/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6557133Z "line": 849 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6557406Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6557664Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6557973Z "path": "crates/spt-runtime/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6558244Z "line": 869 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6558493Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6558740Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6559120Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6559382Z "line": 8403 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6559648Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6559905Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6560201Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6560687Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6560941Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6561198Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6561470Z "id": "REQ-INSTALL-5", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6562381Z "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-21T09:42:01.6562849Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6563126Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6563382Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6563635Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6563907Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6564164Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6564428Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6564688Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6564936Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6565193Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6565456Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6565714Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6565957Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6566257Z "path": "installer/install.ps1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6566519Z "line": 5 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6566776Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6567032Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6567312Z "path": "installer/install.sh", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6567574Z "line": 6 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6567821Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6568079Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6568328Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6568581Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6568853Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6569211Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6569459Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6569766Z "path": "crates/spt/tests/oneliner_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6570069Z "line": 22 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6570332Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6570580Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6570833Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6571090Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6571362Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6571610Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6571862Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6572107Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6572347Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6572598Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6572851Z "id": "REQ-INSTALL-6", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6574887Z "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-21T09:42:01.6575415Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6575668Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6575917Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6576163Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6576416Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6576659Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6576923Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6577190Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6577436Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6577691Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6577945Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6578192Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6578430Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6578740Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6579083Z "line": 61 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6579345Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6579603Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6579908Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6580180Z "line": 641 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6580422Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6580672Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6580996Z "path": "crates/spt-daemon/src/deelevate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6581244Z "line": 191 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6581489Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6581727Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6582032Z "path": "crates/spt-daemon/src/deelevate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6582290Z "line": 276 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6582546Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6582793Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6583092Z "path": "crates/spt/src/main.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6583359Z "line": 43 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6583612Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6583863Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6584159Z "path": "installer/install.sh", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6584422Z "line": 104 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6584669Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6584909Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6585157Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6585404Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6585675Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6585938Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6586186Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6586448Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6586714Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6586976Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6587215Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6587539Z "path": "crates/spt-daemon/src/deelevate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6587793Z "line": 894 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6588044Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6588294Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6588542Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6588800Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6589143Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6589382Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6589648Z "id": "REQ-INSTALL-7", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6591508Z "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-21T09:42:01.6591781Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6592034Z "impl" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6592277Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6592520Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6592763Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6593030Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6593298Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6593558Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6593828Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6594090Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6594338Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6594596Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6595015Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6595278Z "line": 3920 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6595626Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6595878Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6596170Z "path": "installer/install.ps1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6596421Z "line": 157 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6596673Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6596926Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6597171Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6597409Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6597657Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6597904Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6598137Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6598386Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6598647Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6598896Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6599211Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6599445Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6599679Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6599918Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6600179Z "id": "REQ-INSTALL-8", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6602432Z "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-21T09:42:01.6602699Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6602947Z "impl" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6603190Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6603434Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6603681Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6603938Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6604198Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6604436Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6604683Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6604936Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6605194Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6605438Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6605724Z "path": "installer/install.ps1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6605987Z "line": 184 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6606233Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6606486Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6606767Z "path": "installer/install.sh", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6607029Z "line": 121 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6607272Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6607515Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6607763Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6607997Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6608260Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6608517Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6608769Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6609088Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6609635Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6610034Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6610329Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6610626Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6610916Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6611207Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6611536Z "id": "REQ-INSTALL-9", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6615368Z "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-21T09:42:01.6615716Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6616021Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6616327Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6616632Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6616923Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6617229Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6617527Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6617851Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6618162Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6618452Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6618787Z "path": "CONTEXT.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6619544Z "line": 771 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6619852Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6620137Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6620552Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6620848Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6621167Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6621467Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6621749Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6622120Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6622421Z "line": 2535 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6622724Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6623014Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6623371Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6623681Z "line": 2559 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6623915Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6624153Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6624386Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6624625Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6624884Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6625133Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6625375Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6625624Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6625881Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6626138Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6626381Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6626662Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6626915Z "line": 7591 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6627154Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6627388Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6627683Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6627925Z "line": 8433 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6628164Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6628402Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6628635Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6628865Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6629179Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6629413Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6629667Z "id": "REQ-KICK-1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6637423Z "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-21T09:42:01.6637861Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6638176Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6638419Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6638667Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6639219Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6639472Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6639720Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6639959Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6640217Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6640483Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6640730Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6641000Z "path": "CONTEXT.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6641243Z "line": 342 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6641485Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6641724Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6641968Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6642202Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6642464Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6642725Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6642949Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6643293Z "path": "crates/spt-net/src/net/attach.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6643532Z "line": 41 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6643773Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6644000Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6644290Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6644544Z "line": 701 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6644906Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6645149Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6645384Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6645713Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6645971Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6646226Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6646462Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6646786Z "path": "crates/spt-daemon/tests/attach.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6647044Z "line": 913 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6647283Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6647525Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6647759Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6648007Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6648265Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6648503Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6648736Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6649188Z "path": "crates/spt-net/src/net/attach.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6649469Z "line": 205 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6649712Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6649952Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6650205Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6650433Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6650676Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6650905Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6651182Z "id": "REQ-MANIFEST-1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6651731Z "title": "Per-adapter manifest with adapter_name and min_spt_core_version", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6651993Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6652237Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6652471Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6652715Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6652947Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6653190Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6653429Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6653683Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6653945Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6654181Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6654465Z "path": "docs/MANIFEST.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6654704Z "line": 19 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6654947Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6655184Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6655414Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6655658Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6655911Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6656167Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6656400Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6656833Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6657083Z "line": 18 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6657314Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6657557Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6657799Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6658042Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6658290Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6658544Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6658778Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6659315Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6659768Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6660024Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6660272Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6660621Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6660879Z "line": 1029 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6661136Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6661371Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6661705Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6661960Z "line": 1325 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6662201Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6662444Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6662778Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6663031Z "line": 1337 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6663260Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6663502Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6663836Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6664094Z "line": 1348 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6664327Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6664567Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6664899Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6665158Z "line": 1365 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6665397Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6665631Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6666184Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6666437Z "line": 1379 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6666776Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6667009Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6667341Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6667587Z "line": 1495 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6667826Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6668059Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6668389Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6668640Z "line": 1510 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6668875Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6669218Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6669565Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6669813Z "line": 1621 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6670049Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6670270Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6670614Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6670861Z "line": 1632 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6671096Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6671334Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6671578Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6671820Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6672058Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6672307Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6672577Z "id": "REQ-MANIFEST-2", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6673944Z "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-21T09:42:01.6674216Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6674459Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6674711Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6674959Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6675212Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6675459Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6675694Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6675966Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6676219Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6676467Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6676740Z "path": "CONTEXT.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6677006Z "line": 75 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6677244Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6677487Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6677736Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6677982Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6678251Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6678505Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6678743Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6679176Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6679440Z "line": 82 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6679668Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6679918Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6680275Z "path": "crates/spt-runtime/src/profile.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6680547Z "line": 15 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6680802Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6681045Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6681384Z "path": "crates/spt-runtime/src/profile.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6681652Z "line": 65 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6681904Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6682152Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6682491Z "path": "crates/spt-runtime/src/profile.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6682752Z "line": 83 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6683004Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6683245Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6683588Z "path": "crates/spt-runtime/src/profile.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6683850Z "line": 183 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6684085Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6684336Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6684685Z "path": "crates/spt-runtime/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6684942Z "line": 527 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6685180Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6685434Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6685767Z "path": "crates/spt-runtime/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6686033Z "line": 553 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6686289Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6686550Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6686893Z "path": "crates/spt-runtime/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6687266Z "line": 671 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6687625Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6687867Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6688220Z "path": "crates/spt-runtime/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6688490Z "line": 696 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6688746Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6689060Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6689403Z "path": "crates/spt-runtime/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6689666Z "line": 719 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6689919Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6690168Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6690515Z "path": "crates/spt-runtime/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6690773Z "line": 734 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6691015Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6691267Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6691568Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6691826Z "line": 5567 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6692083Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6692345Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6692635Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6692902Z "line": 5581 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6693141Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6693395Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6693702Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6693962Z "line": 5615 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6694205Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6694454Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6694716Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6694969Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6695250Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6695512Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6695760Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6696027Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6696300Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6696564Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6696819Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6697197Z "path": "crates/spt-daemon/src/shellwake.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6697468Z "line": 921 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6697725Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6697984Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6698341Z "path": "crates/spt-runtime/src/profile.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6698598Z "line": 211 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6698852Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6699193Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6699559Z "path": "crates/spt-runtime/src/profile.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6699821Z "line": 272 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6700079Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6700330Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6700698Z "path": "crates/spt-runtime/src/profile.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6700951Z "line": 313 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6701203Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6701437Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6701808Z "path": "crates/spt-runtime/src/profile.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6702076Z "line": 325 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6702328Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6702585Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6702938Z "path": "crates/spt-runtime/src/profile.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6703209Z "line": 336 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6703453Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6703706Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6704068Z "path": "crates/spt-runtime/src/profile.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6704328Z "line": 345 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6704584Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6704832Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6705186Z "path": "crates/spt-runtime/src/profile.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6705452Z "line": 361 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6705700Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6705948Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6706305Z "path": "crates/spt-runtime/src/profile.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6706573Z "line": 444 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6706822Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6707077Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6707442Z "path": "crates/spt-runtime/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6707819Z "line": 958 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6708072Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6708415Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6708783Z "path": "crates/spt-runtime/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6709121Z "line": 982 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6709374Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6709629Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6709989Z "path": "crates/spt-runtime/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6710266Z "line": 1008 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6710509Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6710763Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6711124Z "path": "crates/spt-runtime/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6711386Z "line": 1027 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6711641Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6711889Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6712246Z "path": "crates/spt-runtime/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6712506Z "line": 1058 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6712768Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6713012Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6713378Z "path": "crates/spt-store/src/shellinfo.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6713641Z "line": 309 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6713889Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6714148Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6714462Z "path": "crates/spt/src/api/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6714722Z "line": 606 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6714978Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6715231Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6715541Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6715803Z "line": 8610 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6716056Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6716303Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6716613Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6716875Z "line": 9558 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6717124Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6717377Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6717613Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6717868Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6718117Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6718365Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6718642Z "id": "REQ-MANIFEST-3", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6720740Z "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-21T09:42:01.6721027Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6721275Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6721533Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6721789Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6722047Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6722309Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6722549Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6722826Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6723081Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6723343Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6723624Z "path": "CONTEXT.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6723896Z "line": 81 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6724158Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6724398Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6724654Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6724892Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6725164Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6725425Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6725681Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6726063Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6726326Z "line": 92 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6726577Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6726830Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6727201Z "path": "crates/spt-runtime/src/profile.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6727464Z "line": 101 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6727716Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6727971Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6728334Z "path": "crates/spt-runtime/src/profile.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6728606Z "line": 132 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6728843Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6729178Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6729545Z "path": "crates/spt-runtime/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6729940Z "line": 577 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6730274Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6730523Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6730892Z "path": "crates/spt-runtime/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6731158Z "line": 633 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6731415Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6731672Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6731991Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6732255Z "line": 5628 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6732493Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6732746Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6733052Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6733324Z "line": 5654 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6733565Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6733813Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6734061Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6734314Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6734585Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6734847Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6735105Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6735358Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6735640Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6735904Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6736154Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6736527Z "path": "crates/spt-runtime/src/profile.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6736784Z "line": 371 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6737028Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6737271Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6737638Z "path": "crates/spt-runtime/src/profile.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6737905Z "line": 429 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6738149Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6738401Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6738767Z "path": "crates/spt-runtime/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6739113Z "line": 1082 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6739365Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6739608Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6739923Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6740181Z "line": 8703 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6740434Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6740692Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6740939Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6741172Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6741419Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6741670Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6746308Z "id": "REQ-MANIFEST-4", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6748705Z "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-21T09:42:01.6749185Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6749459Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6749721Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6749969Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6750221Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6750474Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6750727Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6751009Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6751291Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6751538Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6751827Z "path": "CONTEXT.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6752083Z "line": 88 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6752326Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6752579Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6752831Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6753088Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6753361Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6753613Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6753866Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6754266Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6754534Z "line": 100 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6754770Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6755023Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6755420Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6755686Z "line": 183 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6755934Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6756182Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6756539Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6756949Z "line": 83 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6757289Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6757542Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6757924Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6758186Z "line": 629 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6758434Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6758688Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6759140Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6759416Z "line": 654 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6759670Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6759911Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6760152Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6760395Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6760682Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6760948Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6761192Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6761449Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6761711Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6761983Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6762232Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6762623Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6762896Z "line": 1445 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6763144Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6763396Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6763788Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6764054Z "line": 1478 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6764297Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6764550Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6764922Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6765183Z "line": 988 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6765432Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6765679Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6765926Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6766165Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6766419Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6766657Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6766939Z "id": "REQ-MANIFEST-5", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6778245Z "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-21T09:42:01.6778554Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6778816Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6779150Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6779397Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6779663Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6779922Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6780179Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6780461Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6780724Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6780974Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6781262Z "path": "CONTEXT.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6781521Z "line": 83 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6781764Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6782017Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6782264Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6782526Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6782808Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6783070Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6783329Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6783735Z "path": "crates/spt-runtime/src/profile.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6784007Z "line": 120 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6784378Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6784622Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6784870Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6785112Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6785480Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6785751Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6786004Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6786270Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6786533Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6786804Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6787042Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6787434Z "path": "crates/spt-runtime/src/profile.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6787690Z "line": 404 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6787939Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6788182Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6788572Z "path": "crates/spt-runtime/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6788837Z "line": 1155 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6789180Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6789424Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6789819Z "path": "crates/spt-runtime/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6790086Z "line": 1184 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6790335Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6790592Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6790993Z "path": "crates/spt-runtime/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6791245Z "line": 1224 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6791491Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6791728Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6792127Z "path": "crates/spt-runtime/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6792395Z "line": 1239 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6792644Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6792892Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6793134Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6793378Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6793621Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6793865Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6794149Z "id": "REQ-MANIFEST-6", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6802359Z "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-21T09:42:01.6802650Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6802903Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6803142Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6803390Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6803651Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6803899Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6804172Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6804425Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6804675Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6804954Z "path": "CONTEXT.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6805221Z "line": 141 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6805470Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6805709Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6805966Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6806218Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6806495Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6806762Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6807006Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6807254Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6807528Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6807800Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6808045Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6808292Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6808564Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6808820Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6809165Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6809561Z "path": "crates/spt-runtime/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6809825Z "line": 1261 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6810076Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6810314Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6810667Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6810906Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6811155Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6811382Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6811770Z "id": "REQ-MANIFEST-7", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6822786Z "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-21T09:42:01.6823101Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6823343Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6823584Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6823837Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6824075Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6824324Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6824563Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6824829Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6825091Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6825344Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6825639Z "path": "docs/MANIFEST.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6825896Z "line": 35 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6826137Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6826389Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6826628Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6826872Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6827135Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6827401Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6827649Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6828001Z "path": "crates/spt/src/picker/data.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6828264Z "line": 54 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6828502Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6828749Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6829069Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6829302Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6829573Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6829837Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6830085Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6830323Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6830594Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6830856Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6831092Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6831477Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6831722Z "line": 1638 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6831975Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6832213Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6832455Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6832699Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6832938Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6833177Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6833452Z "id": "REQ-MANIFEST-8", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6841111Z "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-21T09:42:01.6841406Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6841657Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6841905Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6842262Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6842511Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6842748Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6843092Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6843339Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6843602Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6843864Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6844109Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6844383Z "path": "CONTEXT.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6844638Z "line": 184 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6844877Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6845120Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6845416Z "path": "docs/MANIFEST.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6845683Z "line": 46 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6845921Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6846159Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6846403Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6846647Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6846916Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6847171Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6847419Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6847810Z "path": "crates/spt-runtime/src/resolve.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6848063Z "line": 222 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6848311Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6848550Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6848894Z "path": "crates/spt-store/src/proc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6849237Z "line": 306 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6849476Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6849726Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6849965Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6850213Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6850471Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6850732Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6850966Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6851356Z "path": "crates/spt/tests/live_resolve_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6851604Z "line": 18 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6851839Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6852095Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6852326Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6852579Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6852846Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6853114Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6853357Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6853734Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6853997Z "line": 1656 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6854243Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6854486Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6854871Z "path": "crates/spt-runtime/src/resolve.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6855131Z "line": 316 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6855375Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6855623Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6856000Z "path": "crates/spt-runtime/src/resolve.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6856262Z "line": 332 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6856519Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6856771Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6857139Z "path": "crates/spt-runtime/src/resolve.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6857405Z "line": 345 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6857651Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6857899Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6858242Z "path": "crates/spt-store/src/proc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6858500Z "line": 422 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6858742Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6859052Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6859406Z "path": "crates/spt-store/src/proc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6859653Z "line": 436 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6859896Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6860141Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6860386Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6860629Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6860868Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6861097Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6861360Z "id": "REQ-MESH-1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6869117Z "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-21T09:42:01.6869593Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6869847Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6870090Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6870339Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6870586Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6870837Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6871095Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6871362Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6871610Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6871862Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6872109Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6872377Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6872635Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6872874Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6873253Z "path": "crates/spt-daemon/src/nethost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6873518Z "line": 972 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6873765Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6874009Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6874404Z "path": "crates/spt-daemon/src/seedproofx.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6874662Z "line": 38 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6874915Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6875155Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6875535Z "path": "crates/spt-daemon/src/seedproofx.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6875798Z "line": 161 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6876044Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6876289Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6876676Z "path": "crates/spt-daemon/src/seedproofx.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6876929Z "line": 206 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6877173Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6877421Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6877797Z "path": "crates/spt-net/src/net/endpoint.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6878060Z "line": 57 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6878308Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6878568Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6879053Z "path": "crates/spt-net/src/net/mesh/seedproof.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6879306Z "line": 24 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6879548Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6879796Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6880192Z "path": "crates/spt-net/src/net/mesh/seedproof.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6880453Z "line": 142 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6880692Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6880932Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6881354Z "path": "crates/spt-net/src/net/mesh/seedproof.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6881618Z "line": 162 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6881865Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6882117Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6882360Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6882608Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6882880Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6883143Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6883390Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6883799Z "path": "crates/spt-daemon/tests/seedproofx.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6884055Z "line": 67 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6884297Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6884541Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6884946Z "path": "crates/spt-daemon/tests/seedproofx.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6885199Z "line": 93 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6885442Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6885686Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6886090Z "path": "crates/spt-daemon/tests/seedproofx.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6886345Z "line": 117 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6886595Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6886836Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6887236Z "path": "crates/spt-daemon/tests/seedproofx.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6887489Z "line": 134 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6887737Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6887985Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6888324Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6888573Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6888835Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6889294Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6889532Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6889914Z "path": "crates/spt-net/src/net/endpoint.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6890171Z "line": 427 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6890413Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6890657Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6891067Z "path": "crates/spt-net/src/net/mesh/seedproof.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6891324Z "line": 376 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6891562Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6891797Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6892211Z "path": "crates/spt-net/src/net/mesh/seedproof.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6892464Z "line": 412 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6892707Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6892948Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6893360Z "path": "crates/spt-net/src/net/mesh/seedproof.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6893607Z "line": 427 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6893860Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6894108Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6894519Z "path": "crates/spt-net/src/net/mesh/seedproof.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6894777Z "line": 438 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6895020Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6895264Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6895673Z "path": "crates/spt-net/src/net/mesh/seedproof.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6895931Z "line": 449 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6896183Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6896422Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6896833Z "path": "crates/spt-net/src/net/mesh/seedproof.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6897084Z "line": 460 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6897334Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6897578Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6897987Z "path": "crates/spt-net/src/net/mesh/seedproof.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6898250Z "line": 496 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6898494Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6898745Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6899241Z "path": "crates/spt-net/src/net/mesh/seedproof.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6899518Z "line": 519 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6899755Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6900000Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6900416Z "path": "crates/spt-net/src/net/mesh/seedproof.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6900673Z "line": 546 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6900921Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6901160Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6901403Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6901646Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6901884Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6902122Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6902386Z "id": "REQ-MESH-2", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6911781Z "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-21T09:42:01.6912087Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6912334Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6912570Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6912812Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6913059Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6913312Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6913555Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6913827Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6914189Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6914432Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6914689Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6915066Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6915337Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6915573Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6915954Z "path": "crates/spt-daemon/src/nethost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6916207Z "line": 807 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6916451Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6916694Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6917066Z "path": "crates/spt-daemon/src/pairhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6917323Z "line": 118 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6917570Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6917823Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6918199Z "path": "crates/spt-daemon/src/pairhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6918455Z "line": 347 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6918703Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6919004Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6919379Z "path": "crates/spt-daemon/src/pairhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6919633Z "line": 389 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6919885Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6920127Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6920500Z "path": "crates/spt-daemon/src/pairhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6920761Z "line": 403 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6920998Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6921246Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6921627Z "path": "crates/spt-daemon/src/pairhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6921889Z "line": 492 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6922118Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6922365Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6922742Z "path": "crates/spt-daemon/src/pairhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6922995Z "line": 507 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6923242Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6923478Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6923863Z "path": "crates/spt-daemon/src/pairhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6924120Z "line": 534 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6924377Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6924625Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6925011Z "path": "crates/spt-daemon/src/seedproofx.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6925278Z "line": 207 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6925525Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6925765Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6926143Z "path": "crates/spt-daemon/src/seedproofx.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6926405Z "line": 755 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6926653Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6926886Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6927274Z "path": "crates/spt-daemon/src/seedproofx.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6927525Z "line": 816 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6927773Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6928012Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6928407Z "path": "crates/spt-daemon/src/seedproofx.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6928679Z "line": 869 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6928921Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6929259Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6929677Z "path": "crates/spt-daemon/src/seedproofx.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6929940Z "line": 891 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6930193Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6930430Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6930789Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6931046Z "line": 122 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6931292Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6931540Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6931910Z "path": "crates/spt-store/src/roster.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6932172Z "line": 44 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6932412Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6932654Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6933007Z "path": "crates/spt-store/src/roster.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6933269Z "line": 184 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6933512Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6933747Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6934103Z "path": "crates/spt-store/src/roster.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6934351Z "line": 211 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6934709Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6934957Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6935409Z "path": "crates/spt-store/src/roster.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6935672Z "line": 251 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6935925Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6936172Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6936533Z "path": "crates/spt-store/src/roster.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6936797Z "line": 275 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6937032Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6937280Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6937623Z "path": "crates/spt-store/src/roster.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6937890Z "line": 289 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6938129Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6938367Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6938729Z "path": "crates/spt-store/src/roster.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6939049Z "line": 300 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6939300Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6939533Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6939890Z "path": "crates/spt-store/src/roster.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6940157Z "line": 313 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6940400Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6940642Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6940872Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6941129Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6941402Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6941655Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6941905Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6942318Z "path": "crates/spt-daemon/tests/rosterprop.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6942570Z "line": 116 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6942818Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6943061Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6943467Z "path": "crates/spt-daemon/tests/rosterprop.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6943719Z "line": 181 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6943964Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6944192Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6944439Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6944683Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6944959Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6945211Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6945444Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6945831Z "path": "crates/spt-daemon/src/seedproofx.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6946084Z "line": 999 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6946327Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6946570Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6946960Z "path": "crates/spt-daemon/src/seedproofx.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6947221Z "line": 1016 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6947463Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6947711Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6948103Z "path": "crates/spt-daemon/src/seedproofx.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6948360Z "line": 1024 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6948597Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6948846Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6949304Z "path": "crates/spt-daemon/src/seedproofx.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6949580Z "line": 1048 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6949828Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6950060Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6950464Z "path": "crates/spt-net/src/net/pairing/wire.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6950717Z "line": 1499 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6950961Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6951207Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6951556Z "path": "crates/spt-store/src/roster.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6951818Z "line": 347 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6952056Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6952300Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6952660Z "path": "crates/spt-store/src/roster.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6952916Z "line": 370 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6953168Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6953402Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6953764Z "path": "crates/spt-store/src/roster.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6954022Z "line": 407 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6954275Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6954509Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6954876Z "path": "crates/spt-store/src/roster.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6955238Z "line": 431 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6955471Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6955810Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6956158Z "path": "crates/spt-store/src/roster.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6956416Z "line": 483 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6956648Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6956897Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6957254Z "path": "crates/spt-store/src/roster.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6957511Z "line": 499 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6957758Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6957994Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6958348Z "path": "crates/spt-store/src/roster.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6958610Z "line": 514 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6958848Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6959153Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6959496Z "path": "crates/spt-store/src/roster.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6959744Z "line": 531 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6959984Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6960232Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6960468Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6960704Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6960948Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6961181Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6961443Z "id": "REQ-MESH-3", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6967161Z "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-21T09:42:01.6967443Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6967691Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6967935Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6968180Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6968435Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6968684Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6969036Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6969308Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6969585Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6969814Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6970061Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6970324Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6970586Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6970826Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6971200Z "path": "crates/spt-daemon/src/pump/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6971451Z "line": 641 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6971693Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6971941Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6972175Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6972424Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6972700Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6972948Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6973195Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6973557Z "path": "crates/spt-daemon/tests/mesh.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6973817Z "line": 373 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6974051Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6974289Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6974653Z "path": "crates/spt-daemon/tests/mesh.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6974904Z "line": 436 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6975152Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6975400Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6975639Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6975887Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6976149Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6976410Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6976654Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6977039Z "path": "crates/spt-daemon/src/pump/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6977293Z "line": 910 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6977527Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6977764Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6978008Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6978251Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6978485Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6978722Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6979173Z "id": "REQ-MESH-4", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6986839Z "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-21T09:42:01.6987224Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6987466Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6987719Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6987971Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6988224Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6988477Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6988721Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6989060Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6989329Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6989598Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6989837Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6990100Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6990367Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6990605Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6991016Z "path": "crates/spt-daemon/src/pump/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6991269Z "line": 33 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6991515Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6991758Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6992148Z "path": "crates/spt-daemon/src/seedproofx.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6992409Z "line": 68 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6992652Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6992901Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6993296Z "path": "crates/spt-daemon/src/seedproofx.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6993549Z "line": 111 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6997840Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6998141Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6998584Z "path": "crates/spt-daemon/src/seedproofx.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6998831Z "line": 462 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6999161Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6999408Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.6999822Z "path": "crates/spt-daemon/src/seedproofx.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7000088Z "line": 711 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7000331Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7000579Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7000975Z "path": "crates/spt-daemon/src/seedproofx.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7001237Z "line": 725 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7001475Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7001723Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7002085Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7002333Z "line": 132 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7002581Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7002828Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7003208Z "path": "crates/spt-store/src/rotation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7003470Z "line": 26 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7003712Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7003951Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7004318Z "path": "crates/spt-store/src/rotation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7004571Z "line": 97 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7004810Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7005049Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7005409Z "path": "crates/spt-store/src/rotation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7005669Z "line": 119 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7005917Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7006151Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7006508Z "path": "crates/spt-store/src/subnet.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7006751Z "line": 82 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7006991Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7007228Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7007587Z "path": "crates/spt-store/src/subnet.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7008015Z "line": 111 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7008262Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7008592Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7009025Z "path": "crates/spt-store/src/subnet.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7009282Z "line": 232 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7009517Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7009754Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7010107Z "path": "crates/spt-store/src/subnet.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7010364Z "line": 245 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7010605Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7010838Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7011149Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7011401Z "line": 4665 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7011644Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7011888Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7012112Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7012360Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7012626Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7012888Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7013132Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7013500Z "path": "crates/spt-daemon/tests/reseed.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7013754Z "line": 98 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7013992Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7014234Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7014606Z "path": "crates/spt-daemon/tests/reseed.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7014873Z "line": 140 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7015116Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7015356Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7015605Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7015845Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7016110Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7016368Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7016612Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7017021Z "path": "crates/spt-daemon/src/pump/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7017288Z "line": 178 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7017527Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7017765Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7018176Z "path": "crates/spt-daemon/src/pump/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7018438Z "line": 242 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7018684Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7018932Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7019389Z "path": "crates/spt-daemon/src/seedproofx.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7019656Z "line": 1079 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7019900Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7020144Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7020519Z "path": "crates/spt-daemon/src/seedproofx.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7020783Z "line": 1109 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7021028Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7021269Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7021661Z "path": "crates/spt-daemon/src/seedproofx.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7021908Z "line": 1129 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7022156Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7022395Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7022809Z "path": "crates/spt-net/src/net/mesh/seedproof.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7023072Z "line": 602 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7023312Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7023555Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7023910Z "path": "crates/spt-store/src/rotation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7024169Z "line": 148 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7024409Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7024652Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7025019Z "path": "crates/spt-store/src/rotation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7025277Z "line": 169 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7025521Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7025758Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7026131Z "path": "crates/spt-store/src/rotation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7026386Z "line": 181 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7026632Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7026862Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7027219Z "path": "crates/spt-store/src/rotation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7027472Z "line": 202 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7027710Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7027953Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7028421Z "path": "crates/spt-store/src/subnet.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7028673Z "line": 375 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7029094Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7029320Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7029678Z "path": "crates/spt-store/src/subnet.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7029921Z "line": 407 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7030160Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7030412Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7030713Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7030961Z "line": 10052 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7031194Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7031437Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7031670Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7031906Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7032135Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7032379Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7032640Z "id": "REQ-MESH-5", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7037379Z "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-21T09:42:01.7037684Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7037936Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7038184Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7038427Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7038671Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7038909Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7039224Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7039491Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7039728Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7039972Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7040239Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7040490Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7040729Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7041115Z "path": "crates/spt-daemon/src/notifsync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7041383Z "line": 61 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7041621Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7041865Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7042253Z "path": "crates/spt-daemon/src/notifsync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7042509Z "line": 109 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7042757Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7043000Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7043381Z "path": "crates/spt-daemon/src/pairhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7043643Z "line": 104 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7043877Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7044122Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7044507Z "path": "crates/spt-daemon/src/propagate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7044766Z "line": 105 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7045007Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7045252Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7045663Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7045900Z "line": 85 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7046149Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7046387Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7046797Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7047055Z "line": 250 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7047295Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7047539Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7047934Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7048191Z "line": 314 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7048434Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7048673Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7049278Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7049532Z "line": 767 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7049774Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7050007Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7050359Z "path": "crates/spt-daemon/src/sync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7050613Z "line": 101 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7050842Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7051079Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7051557Z "path": "crates/spt-store/src/roster.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7051800Z "line": 193 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7052139Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7052377Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7052609Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7052851Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7053127Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7053379Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7053622Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7053856Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7054128Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7054381Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7054625Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7055039Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7055288Z "line": 1009 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7055524Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7055755Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7056112Z "path": "crates/spt-store/src/roster.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7056352Z "line": 462 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7056605Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7056847Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7057080Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7057328Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7057559Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7057797Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7058057Z "id": "REQ-MESH-6", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7062264Z "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-21T09:42:01.7062545Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7062779Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7063023Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7063260Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7063500Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7063744Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7064016Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7064264Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7064507Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7064764Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7065022Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7065275Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7065514Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7065829Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7066084Z "line": 4181 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7066320Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7066559Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7066797Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7067044Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7067312Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7067564Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7067809Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7068042Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7068308Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7068560Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7068803Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7069174Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7069440Z "line": 10602 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7069679Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7069921Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7070236Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7070484Z "line": 10629 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7070728Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7070967Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7071272Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7071527Z "line": 10653 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7071756Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7071995Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7072219Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7072462Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7072696Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7072930Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7073202Z "id": "REQ-MIGRATE-1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7073748Z "title": "Auto-detect and migrate a legacy claude_skill_owl install", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7074032Z "requiredStages": [], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7074276Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7074633Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7074905Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7075258Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7075497Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7075740Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7076011Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7076269Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7076507Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7076754Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7077004Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7077261Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7077496Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7077735Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7077997Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7078258Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7078482Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7078712Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7079037Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7079268Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7079528Z "id": "REQ-MSG-1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7081092Z "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-21T09:42:01.7081378Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7081608Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7081842Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7082082Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7082307Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7082546Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7082779Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7083046Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7083303Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7083537Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7083782Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7084038Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7084294Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7084531Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7084869Z "path": "crates/spt-msg/src/deliver.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7085127Z "line": 28 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7085366Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7085612Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7085956Z "path": "crates/spt-msg/src/deliver.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7086209Z "line": 94 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7086452Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7086682Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7087034Z "path": "crates/spt-msg/src/deliver.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7087286Z "line": 127 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7087530Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7087770Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7088122Z "path": "crates/spt-msg/src/deliver.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7088376Z "line": 149 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7088614Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7088852Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7089277Z "path": "crates/spt-msg/src/deliver.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7089535Z "line": 174 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7089756Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7089998Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7090350Z "path": "crates/spt-msg/src/listener.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7090604Z "line": 18 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7090847Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7091075Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7091414Z "path": "crates/spt-msg/src/ring.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7091656Z "line": 13 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7091890Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7092121Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7092450Z "path": "crates/spt-msg/src/ring.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7092700Z "line": 62 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7092933Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7093173Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7093497Z "path": "crates/spt-msg/src/wire.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7093745Z "line": 13 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7093984Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7094226Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7094473Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7094713Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7094978Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7095228Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7095476Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7096035Z "path": "crates/spt-msg/tests/killer_quickstart.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7096297Z "line": 9 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7096631Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7096860Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7097279Z "path": "crates/spt-msg/tests/killer_quickstart.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7097533Z "line": 56 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7097778Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7098015Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7098434Z "path": "crates/spt-msg/tests/killer_quickstart.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7098692Z "line": 113 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7098931Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7099250Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7099489Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7099737Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7099994Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7100241Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7100488Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7100840Z "path": "crates/spt-msg/src/deliver.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7101107Z "line": 203 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7101335Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7101582Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7101931Z "path": "crates/spt-msg/src/deliver.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7102179Z "line": 232 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7102417Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7102643Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7102991Z "path": "crates/spt-msg/src/deliver.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7103231Z "line": 277 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7103474Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7103719Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7104062Z "path": "crates/spt-msg/src/deliver.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7104315Z "line": 300 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7104554Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7104795Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7105135Z "path": "crates/spt-msg/src/deliver.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7105376Z "line": 325 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7105619Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7105861Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7106219Z "path": "crates/spt-msg/src/listener.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7106476Z "line": 204 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7106723Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7106957Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7107319Z "path": "crates/spt-msg/src/listener.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7107576Z "line": 237 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7107812Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7108046Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7108396Z "path": "crates/spt-msg/src/listener.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7108655Z "line": 251 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7108890Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7109213Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7109562Z "path": "crates/spt-msg/src/listener.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7109810Z "line": 263 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7110058Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7110288Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7110622Z "path": "crates/spt-msg/src/ring.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7110872Z "line": 162 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7111118Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7111352Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7111681Z "path": "crates/spt-msg/src/ring.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7111930Z "line": 242 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7112157Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7112401Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7112730Z "path": "crates/spt-msg/src/wire.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7112982Z "line": 134 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7113227Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7113455Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7113796Z "path": "crates/spt-msg/src/wire.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7114049Z "line": 153 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7114293Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7114527Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7114760Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7115003Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7115237Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7115486Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7115748Z "id": "REQ-MSG-2", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7116765Z "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-21T09:42:01.7117136Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7117375Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7117618Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7117861Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7118113Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7118353Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7118625Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7118884Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7119178Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7119431Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7119679Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7119928Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7120160Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7120470Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7120718Z "line": 11 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7120952Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7121191Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7121499Z "path": "crates/spt/src/main.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7121754Z "line": 8 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7121993Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7122227Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7122470Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7122703Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7122980Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7123223Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7123467Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7123715Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7123986Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7124228Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7124463Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7124772Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7125025Z "line": 7717 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7125258Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7125496Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7125807Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7126064Z "line": 7759 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7126303Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7126554Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7126852Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7127110Z "line": 7808 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7127349Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7127592Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7127902Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7128153Z "line": 7831 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7128393Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7128622Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7128932Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7129266Z "line": 9807 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7129517Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7129743Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7130048Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7130302Z "line": 9816 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7130540Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7130778Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7131088Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7131345Z "line": 9830 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7131592Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7131828Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7132069Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7132314Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7132553Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7132782Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7133050Z "id": "REQ-MSG-3", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7134394Z "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-21T09:42:01.7134662Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7134907Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7135141Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7135375Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7135605Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7135851Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7136095Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7136352Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7136601Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7136839Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7137085Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7137346Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7137717Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7137956Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7138389Z "path": "crates/spt-msg/src/listener.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7138642Z "line": 19 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7138872Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7139196Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7139530Z "path": "crates/spt-msg/src/ready.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7139783Z "line": 21 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7140019Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7140251Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7140589Z "path": "crates/spt-msg/src/ready.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7140828Z "line": 48 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7141072Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7141305Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7141633Z "path": "crates/spt-msg/src/ready.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7141886Z "line": 174 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7142115Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7142355Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7142595Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7142841Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7143095Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7143366Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7143610Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7144028Z "path": "crates/spt-msg/tests/killer_quickstart.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7144278Z "line": 10 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7144515Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7144753Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7145170Z "path": "crates/spt-msg/tests/killer_quickstart.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7145424Z "line": 56 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7145663Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7145902Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7146140Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7146373Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7146645Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7146893Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7147128Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7147467Z "path": "crates/spt-msg/src/ready.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7147726Z "line": 228 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7147972Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7148197Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7148540Z "path": "crates/spt-msg/src/ready.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7148793Z "line": 247 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7149122Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7149356Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7149690Z "path": "crates/spt-msg/src/ready.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7149942Z "line": 270 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7150175Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7150414Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7150647Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7150882Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7151111Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7151341Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7151603Z "id": "REQ-MSG-4", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7154236Z "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-21T09:42:01.7154528Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7154785Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7155027Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7155260Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7155487Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7155744Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7155989Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7156252Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7156515Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7156754Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7157005Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7157267Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7157525Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7157759Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7158097Z "path": "crates/spt-msg/src/emit.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7158344Z "line": 19 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7158584Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7158819Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7159223Z "path": "crates/spt-msg/src/emit.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7159592Z "line": 46 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7159824Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7160177Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7160526Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7160774Z "line": 532 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7161021Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7161258Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7161567Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7161819Z "line": 3110 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7162057Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7162306Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7162540Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7162778Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7163025Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7163292Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7163532Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7163909Z "path": "crates/spt/tests/quickstart_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7164167Z "line": 98 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7164406Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7164653Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7165026Z "path": "crates/spt/tests/quickstart_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7165287Z "line": 128 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7165521Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7165764Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7166013Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7166256Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7166535Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7166789Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7167027Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7167351Z "path": "crates/spt-msg/src/emit.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7167609Z "line": 68 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7167842Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7168076Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7168414Z "path": "crates/spt-msg/src/emit.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7168662Z "line": 79 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7168909Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7169207Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7169536Z "path": "crates/spt-msg/src/emit.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7169803Z "line": 90 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7170027Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7170266Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7170585Z "path": "crates/spt-msg/src/emit.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7170834Z "line": 151 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7171067Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7171305Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7171543Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7171776Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7172016Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7172241Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7172504Z "id": "REQ-MSG-5", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7175137Z "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-21T09:42:01.7175414Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7175657Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7175900Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7176147Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7176386Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7176630Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7176874Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7177133Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7177382Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7177611Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7177883Z "path": "CONTEXT.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7178135Z "line": 231 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7178368Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7178611Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7178847Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7179171Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7179436Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7179695Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7179934Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7180277Z "path": "crates/spt-daemon/src/wan.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7180526Z "line": 60 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7180750Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7180992Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7181451Z "path": "crates/spt-proto/src/event.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7181709Z "line": 126 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7182043Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7182279Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7182625Z "path": "crates/spt-proto/src/event.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7182873Z "line": 135 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7183102Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7183340Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7183683Z "path": "crates/spt-proto/src/event.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7183937Z "line": 149 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7184179Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7184422Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7184760Z "path": "crates/spt-proto/src/event.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7185011Z "line": 178 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7185244Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7185478Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7185773Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7186035Z "line": 2802 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7186288Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7186518Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7186761Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7187008Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7187270Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7187514Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7187751Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7188114Z "path": "crates/spt/tests/gateway_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7188366Z "line": 19 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7192358Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7192632Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7192868Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7193113Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7193375Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7193634Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7193868Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7194216Z "path": "crates/spt-daemon/src/wan.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7194459Z "line": 192 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7194706Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7194939Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7195334Z "path": "crates/spt-daemon/tests/wanmsg.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7195594Z "line": 154 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7195838Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7196081Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7196411Z "path": "crates/spt-msg/src/emit.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7196662Z "line": 122 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7196896Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7197135Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7197482Z "path": "crates/spt-proto/src/event.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7197731Z "line": 452 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7197970Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7198211Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7198554Z "path": "crates/spt-proto/src/event.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7198807Z "line": 501 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7199117Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7199351Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7199694Z "path": "crates/spt-proto/src/event.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7199962Z "line": 517 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7200195Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7200437Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7200782Z "path": "crates/spt-proto/src/event.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7201040Z "line": 536 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7201289Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7201522Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7201833Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7202074Z "line": 7660 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7202318Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7202557Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7202787Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7203028Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7203262Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7203504Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7203760Z "id": "REQ-MSG-6", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7209095Z "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-21T09:42:01.7209620Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7209850Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7210096Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7210340Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7210579Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7210828Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7211063Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7211342Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7211596Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7211830Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7212101Z "path": "CONTEXT.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7212354Z "line": 234 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7212592Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7212816Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7213051Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7213293Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7213556Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7213798Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7214045Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7214454Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7214707Z "line": 177 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7214950Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7215182Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7215584Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7215826Z "line": 428 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7216069Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7216309Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7216701Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7216958Z "line": 451 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7217196Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7217425Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7217763Z "path": "crates/spt-daemon/src/wan.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7218016Z "line": 89 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7218259Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7218489Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7218862Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7219209Z "line": 155 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7219451Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7219688Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7219927Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7220171Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7220439Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7220700Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7220938Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7221181Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7221449Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7221700Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7221940Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7222337Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7222594Z "line": 1746 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7222828Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7223067Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7223395Z "path": "crates/spt-daemon/src/wan.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7223658Z "line": 219 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7223902Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7224140Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7224368Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7224596Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7224837Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7225070Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7225347Z "id": "REQ-MSG-ENVELOPE", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7237732Z "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-21T09:42:01.7238249Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7238498Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7238737Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7239037Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7239266Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7239518Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7239771Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7240010Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7240287Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7240542Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7240780Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7241540Z "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-21T09:42:01.7241796Z "line": 47 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7242044Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7242282Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7242518Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7242748Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7243019Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7243280Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7243524Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7243858Z "path": "crates/spt-msg/src/emit.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7244111Z "line": 20 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7244348Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7244587Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7244911Z "path": "crates/spt-msg/src/emit.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7245154Z "line": 33 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7245399Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7245640Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7245962Z "path": "crates/spt-msg/src/emit.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7246219Z "line": 47 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7246458Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7246697Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7247016Z "path": "crates/spt-msg/src/emit.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7247264Z "line": 58 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7247507Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7247740Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7248069Z "path": "crates/spt-msg/src/wire.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7248320Z "line": 14 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7248562Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7248790Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7249192Z "path": "crates/spt-msg/src/wire.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7249443Z "line": 27 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7249678Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7249921Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7250245Z "path": "crates/spt-msg/src/wire.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7250504Z "line": 40 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7250737Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7250978Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7251326Z "path": "crates/spt-store/src/spool.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7251580Z "line": 92 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7251823Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7252061Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7252414Z "path": "crates/spt/src/api/delivery.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7252662Z "line": 143 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7252905Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7253143Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7253498Z "path": "crates/spt/src/api/delivery.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7253760Z "line": 216 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7253994Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7254236Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7254575Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7254837Z "line": 533 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7255080Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7255433Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7255772Z "path": "crates/spt/src/api/worker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7256020Z "line": 78 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7256398Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7256623Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7256937Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7257195Z "line": 3111 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7257432Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7257676Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7257919Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7258173Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7258430Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7258686Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7258932Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7259404Z "path": "crates/spt/tests/poll_envelope_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7259661Z "line": 15 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7259895Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7260129Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7260362Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7260605Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7260881Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7261130Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7261370Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7261682Z "path": "crates/spt-msg/src/emit.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7261929Z "line": 102 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7262163Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7262402Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7262726Z "path": "crates/spt-msg/src/emit.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7262984Z "line": 137 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7263227Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7263465Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7263788Z "path": "crates/spt-msg/src/wire.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7264035Z "line": 98 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7264272Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7264510Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7264830Z "path": "crates/spt-msg/src/wire.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7265087Z "line": 106 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7265316Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7265560Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7265890Z "path": "crates/spt-msg/src/wire.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7266148Z "line": 113 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7266380Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7266622Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7266949Z "path": "crates/spt-msg/src/wire.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7267197Z "line": 122 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7267440Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7267683Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7267922Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7268155Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7268385Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7268612Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7268932Z "id": "REQ-MSG-IDLE-TRANSLATION-BINARY", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7285178Z "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-21T09:42:01.7285717Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7285955Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7286193Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7286446Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7286695Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7286933Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7287181Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7287419Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7287687Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7287938Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7288183Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7288618Z "path": "docs-site/src/harness-contract/manifest.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7288866Z "line": 277 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7289214Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7289452Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7289742Z "path": "docs/MANIFEST.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7290004Z "line": 198 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7290244Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7290485Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7290721Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7290965Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7291227Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7291490Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7291728Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7292091Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7292352Z "line": 1060 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7292581Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7292829Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7293200Z "path": "crates/spt-daemon/src/translation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7293459Z "line": 23 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7293682Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7293920Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7294321Z "path": "crates/spt-daemon/src/translation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7294573Z "line": 91 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7294821Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7295055Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7295441Z "path": "crates/spt-daemon/src/translation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7295682Z "line": 239 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7295919Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7296152Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7296525Z "path": "crates/spt-daemon/src/translation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7296782Z "line": 287 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7297021Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7297264Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7297645Z "path": "crates/spt-daemon/src/translation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7297908Z "line": 311 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7298147Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7298378Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7298753Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7299111Z "line": 60 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7299353Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7299593Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7299960Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7300203Z "line": 889 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7300437Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7300666Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7300893Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7301135Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7301396Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7301648Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7301877Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7302336Z "path": "crates/spt-daemon/tests/inject_control_wedge.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7302598Z "line": 1089 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7302836Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7303075Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7303547Z "path": "crates/spt-daemon/tests/inject_control_wedge.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7303803Z "line": 1194 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7304047Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7304395Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7304857Z "path": "crates/spt-daemon/tests/inject_control_wedge.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7305210Z "line": 1262 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7305448Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7305691Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7306148Z "path": "crates/spt-daemon/tests/inject_control_wedge.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7306407Z "line": 1355 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7306646Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7306890Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7307129Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7307371Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7307638Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7307886Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7308126Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7308506Z "path": "crates/spt-daemon/src/harnesshost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7308769Z "line": 270 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7309082Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7309318Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7309705Z "path": "crates/spt-daemon/src/translation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7309952Z "line": 350 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7310200Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7310434Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7310815Z "path": "crates/spt-daemon/src/translation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7311063Z "line": 381 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7311298Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7311534Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7311913Z "path": "crates/spt-daemon/src/translation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7312165Z "line": 411 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7312400Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7312643Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7313024Z "path": "crates/spt-daemon/src/translation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7313277Z "line": 440 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7313512Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7313758Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7314122Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7314387Z "line": 1181 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7314631Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7314874Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7315113Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7315350Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7315579Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7315814Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7316062Z "id": "REQ-NET-1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7316641Z "title": "WAN messaging first-class, behind default-on net feature flag", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7316911Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7317146Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7317383Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7317616Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7317850Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7318089Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7318337Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7318609Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7318856Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7319171Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7319423Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7319689Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7319945Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7320188Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7320561Z "path": "crates/spt-daemon/src/dispatch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7320812Z "line": 54 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7321056Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7321290Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7321656Z "path": "crates/spt-daemon/src/dispatch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7321905Z "line": 594 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7322146Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7322387Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7322716Z "path": "crates/spt-daemon/src/wan.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7322969Z "line": 130 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7323208Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7323457Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7323823Z "path": "crates/spt-net/src/net/endpoint.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7324082Z "line": 97 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7324323Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7324552Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7324923Z "path": "crates/spt-net/src/net/endpoint.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7325280Z "line": 159 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7325619Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7325858Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7326229Z "path": "crates/spt-net/src/net/endpoint.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7326488Z "line": 175 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7326722Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7326961Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7327330Z "path": "crates/spt-net/src/net/endpoint.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7327591Z "line": 190 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7327823Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7328063Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7328429Z "path": "crates/spt-net/src/net/endpoint.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7328682Z "line": 271 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7328921Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7329251Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7329622Z "path": "crates/spt-net/src/net/endpoint.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7329876Z "line": 306 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7330121Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7330366Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7330733Z "path": "crates/spt-net/src/net/endpoint.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7331000Z "line": 312 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7331240Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7331479Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7331845Z "path": "crates/spt-net/src/net/endpoint.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7332104Z "line": 318 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7332346Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7332588Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7332961Z "path": "crates/spt-net/src/net/endpoint.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7333210Z "line": 334 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7333449Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7333693Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7334045Z "path": "crates/spt-net/src/net/endpoint.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7334298Z "line": 354 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7334531Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7334778Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7335131Z "path": "crates/spt-net/src/net/wanmsg.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7335389Z "line": 35 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7335646Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7335874Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7336223Z "path": "crates/spt-net/src/net/wanmsg.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7336479Z "line": 85 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7336728Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7336962Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7337310Z "path": "crates/spt-store/src/spool.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7337564Z "line": 138 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7337804Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7338036Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7338332Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7338589Z "line": 2953 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7338819Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7339119Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7339448Z "path": "crates/spt/src/wansend.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7339705Z "line": 17 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7339948Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7340177Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7340416Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7340657Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7340912Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7341171Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7341405Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7341776Z "path": "crates/spt-daemon/tests/dispatch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7342024Z "line": 341 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7342253Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7342491Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7342858Z "path": "crates/spt-daemon/tests/twohost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7343115Z "line": 675 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7343353Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7343580Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7343948Z "path": "crates/spt-daemon/tests/twohost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7344204Z "line": 973 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7344432Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7344671Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7345043Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7345282Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7345555Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7345902Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7346143Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7346512Z "path": "crates/spt-daemon/src/dispatch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7346759Z "line": 651 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7347002Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7347231Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7347603Z "path": "crates/spt-daemon/src/dispatch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7347856Z "line": 686 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7348096Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7348336Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7348715Z "path": "crates/spt-daemon/tests/dispatch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7349040Z "line": 940 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7349272Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7349516Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7349865Z "path": "crates/spt-daemon/tests/wanmsg.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7350131Z "line": 201 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7350371Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7350599Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7350977Z "path": "crates/spt-net/src/net/endpoint.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7351227Z "line": 442 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7351472Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7351692Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7352069Z "path": "crates/spt-net/src/net/endpoint.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7352327Z "line": 456 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7352561Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7352803Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7353166Z "path": "crates/spt-net/src/net/endpoint.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7353428Z "line": 475 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7353665Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7353908Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7354265Z "path": "crates/spt-net/src/net/wanmsg.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7354522Z "line": 120 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7354764Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7355007Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7355360Z "path": "crates/spt-net/src/net/wanmsg.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7355608Z "line": 163 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7355852Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7356096Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7356435Z "path": "crates/spt-store/src/spool.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7356695Z "line": 530 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7356937Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7357181Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7357491Z "path": "crates/spt/src/wansend.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7357748Z "line": 616 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7357982Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7358220Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7358549Z "path": "crates/spt/src/wansend.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7358802Z "line": 1006 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7359118Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7359348Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7359585Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7359828Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7360062Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7360296Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7360544Z "id": "REQ-NET-2", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7361116Z "title": "n0 relay default + self-host knob + plain-language disclosure", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7361383Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7361626Z "impl" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7361859Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7362094Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7362348Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7362611Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7362868Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7363106Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7363348Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7363611Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7363864Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7364103Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7364454Z "path": "crates/spt-daemon/src/config.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7364714Z "line": 57 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7364957Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7365196Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7365673Z "path": "crates/spt-net/src/net/endpoint.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7365925Z "line": 71 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7366259Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7366493Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7366864Z "path": "crates/spt-net/src/net/endpoint.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7367111Z "line": 81 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7367355Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7367593Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7367961Z "path": "crates/spt-net/src/net/endpoint.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7368242Z "line": 159 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7368485Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7368728Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7369645Z "path": "crates/spt-net/src/net/endpoint.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7370523Z "line": 175 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7371148Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7371690Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7372362Z "path": "crates/spt-net/src/net/endpoint.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7373237Z "line": 190 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7373861Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7374401Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7374918Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7375446Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7376047Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7376705Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7377329Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7377862Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7378434Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7379165Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7379785Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7380444Z "path": "crates/spt-daemon/src/config.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7381301Z "line": 402 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7381917Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7382494Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7383077Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7383602Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7384111Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7384627Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7385181Z "id": "REQ-NET-3", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7386086Z "title": "Cross-node Psyche sync over P2P replaces gh-repo-sync", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7387151Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7387810Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7388370Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7388913Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7389500Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7390064Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7390648Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7391324Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7391953Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7392477Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7393059Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7393718Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7394328Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7394967Z "path": "crates/spt-daemon/src/sync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7395817Z "line": 39 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7396442Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7396981Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7397625Z "path": "crates/spt-daemon/src/sync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7398464Z "line": 182 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7399168Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7399722Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7400361Z "path": "crates/spt-daemon/src/sync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7401199Z "line": 333 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7401826Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7402374Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7407260Z "path": "crates/spt-net/src/net/sync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7408156Z "line": 36 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7408805Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7409442Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7410134Z "path": "crates/spt-store/src/branchstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7411035Z "line": 158 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7411654Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7412206Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7412901Z "path": "crates/spt-store/src/branchstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7413802Z "line": 238 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7414446Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7415162Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7415859Z "path": "crates/spt-store/src/branchstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7416750Z "line": 259 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7417491Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7418024Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7418702Z "path": "crates/spt-store/src/branchstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7419670Z "line": 317 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7420303Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7420852Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7421538Z "path": "crates/spt-store/src/branchstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7422428Z "line": 336 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7423061Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7423610Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7424287Z "path": "crates/spt-store/src/branchstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7425172Z "line": 374 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7425794Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7426343Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7427010Z "path": "crates/spt-store/src/branchstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7427876Z "line": 419 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7428495Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7429106Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7429782Z "path": "crates/spt-store/src/branchstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7430659Z "line": 432 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7431279Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7431812Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7432480Z "path": "crates/spt-store/src/syncmerge.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7433321Z "line": 29 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7433946Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7434485Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7435139Z "path": "crates/spt-store/src/syncmerge.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7436006Z "line": 72 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7436621Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7437165Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7437832Z "path": "crates/spt-store/src/syncmerge.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7438693Z "line": 123 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7439379Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7439919Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7440428Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7440949Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7441538Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7442197Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7442817Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7443335Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7443914Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7444562Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7445163Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7445826Z "path": "crates/spt-daemon/tests/sync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7446667Z "line": 223 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7447292Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7447834Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7448493Z "path": "crates/spt-daemon/tests/sync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7449395Z "line": 351 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7450011Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7450545Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7451203Z "path": "crates/spt-daemon/tests/sync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7452050Z "line": 504 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7452665Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7453200Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7453852Z "path": "crates/spt-net/src/net/sync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7454675Z "line": 93 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7455281Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7455828Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7456477Z "path": "crates/spt-net/src/net/sync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7457313Z "line": 142 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7457923Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7458467Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7459187Z "path": "crates/spt-store/src/syncmerge.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7460027Z "line": 315 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7460641Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7461186Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7461853Z "path": "crates/spt-store/src/syncmerge.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7462702Z "line": 355 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7463317Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7464013Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7464673Z "path": "crates/spt-store/src/syncmerge.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7465635Z "line": 494 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7466246Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7466776Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7467298Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7467802Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7468302Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7468798Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7469405Z "id": "REQ-NODE-IDENTITY", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7470587Z "title": "Ed25519 identity primitive: keypair, detached sign/verify, stable pubkey<->hex", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7471827Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7472462Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7473009Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7473553Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7474076Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7474644Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7475215Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7475876Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7476482Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7477016Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7477597Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7478247Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7478852Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7479573Z "path": "crates/spt-proto/src/identity.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7480425Z "line": 60 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7481028Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7481568Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7482244Z "path": "crates/spt-proto/src/identity.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7483089Z "line": 68 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7483702Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7484241Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7484895Z "path": "crates/spt-proto/src/identity.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7485737Z "line": 86 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7486341Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7486879Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7487547Z "path": "crates/spt-proto/src/identity.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7488381Z "line": 120 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7489093Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7489627Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7490285Z "path": "crates/spt-proto/src/identity.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7491128Z "line": 127 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7491741Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7492279Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7492938Z "path": "crates/spt-proto/src/identity.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7493777Z "line": 143 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7494392Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7494916Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7495545Z "path": "crates/spt-store/src/nodeid.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7496358Z "line": 16 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7496964Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7497487Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7497998Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7498513Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7499159Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7499821Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7500431Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7500960Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7501545Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7502186Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7502793Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7503446Z "path": "crates/spt-proto/src/identity.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7504301Z "line": 199 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7504914Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7505447Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7506091Z "path": "crates/spt-proto/src/identity.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7506941Z "line": 218 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7507547Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7508087Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7508735Z "path": "crates/spt-proto/src/identity.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7509648Z "line": 234 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7510256Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7510796Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7511448Z "path": "crates/spt-proto/src/identity.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7512291Z "line": 256 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7513038Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7513573Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7514207Z "path": "crates/spt-store/src/nodeid.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7515140Z "line": 124 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7515770Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7516307Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7516956Z "path": "crates/spt-store/src/nodeid.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7517793Z "line": 140 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7518412Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7519013Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7519639Z "path": "crates/spt-store/src/nodeid.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7520472Z "line": 155 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7521069Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7521604Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7522119Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7522623Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7523112Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7523608Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7524118Z "id": "REQ-NOTIF-1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7525690Z "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-21T09:42:01.7527420Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7528052Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7528596Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7529221Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7529754Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7530269Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7530821Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7531395Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7532059Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7532664Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7533188Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7533754Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7534397Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7534989Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7535647Z "path": "crates/spt-daemon/src/dispatch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7536483Z "line": 514 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7537089Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7537629Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7538267Z "path": "crates/spt-daemon/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7539166Z "line": 30 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7539771Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7540309Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7540948Z "path": "crates/spt-daemon/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7541766Z "line": 69 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7542376Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7542919Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7543549Z "path": "crates/spt-daemon/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7544352Z "line": 93 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7544957Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7545496Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7546126Z "path": "crates/spt-daemon/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7546935Z "line": 107 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7547550Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7548085Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7548709Z "path": "crates/spt-daemon/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7549610Z "line": 142 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7550225Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7550760Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7551385Z "path": "crates/spt-daemon/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7552211Z "line": 187 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7552807Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7553336Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7553960Z "path": "crates/spt-daemon/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7554783Z "line": 258 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7555387Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7555927Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7556551Z "path": "crates/spt-daemon/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7557351Z "line": 372 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7557957Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7558482Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7559178Z "path": "crates/spt-daemon/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7559976Z "line": 479 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7560586Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7561114Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7561763Z "path": "crates/spt-daemon/src/notifsync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7562737Z "line": 24 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7563439Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7563972Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7564631Z "path": "crates/spt-daemon/src/notifsync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7565468Z "line": 34 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7566073Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7566606Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7567256Z "path": "crates/spt-daemon/src/notifsync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7568093Z "line": 60 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7568689Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7569304Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7569961Z "path": "crates/spt-daemon/src/notifsync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7570813Z "line": 82 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7571418Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7571957Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7572615Z "path": "crates/spt-daemon/src/notifsync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7573456Z "line": 94 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7574047Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7574581Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7575225Z "path": "crates/spt-daemon/src/psyrelay.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7576075Z "line": 96 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7576675Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7577200Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7577864Z "path": "crates/spt-daemon/src/pump/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7578715Z "line": 44 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7579392Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7579931Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7580560Z "path": "crates/spt-net/src/net/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7581382Z "line": 20 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7581988Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7582526Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7583151Z "path": "crates/spt-net/src/net/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7583983Z "line": 30 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7584574Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7585107Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7585741Z "path": "crates/spt-net/src/net/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7586568Z "line": 50 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7587193Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7587726Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7588351Z "path": "crates/spt-store/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7589222Z "line": 28 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7589820Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7590349Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7590964Z "path": "crates/spt-store/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7591780Z "line": 126 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7592390Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7592925Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7593551Z "path": "crates/spt-store/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7594366Z "line": 161 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7594971Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7595501Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7596126Z "path": "crates/spt-store/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7596936Z "line": 202 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7597543Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7598072Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7598693Z "path": "crates/spt-store/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7599611Z "line": 213 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7600222Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7600751Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7601370Z "path": "crates/spt-store/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7602178Z "line": 238 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7602793Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7603331Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7603952Z "path": "crates/spt-store/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7604761Z "line": 261 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7605360Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7605889Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7606523Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7607347Z "line": 86 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7607937Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7608474Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7609076Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7609700Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7610268Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7611029Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7611617Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7612283Z "path": "crates/spt-daemon/tests/dispatch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7613134Z "line": 285 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7613750Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7614278Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7614923Z "path": "crates/spt-daemon/tests/pump.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7615758Z "line": 145 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7616364Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7616903Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7617543Z "path": "crates/spt-daemon/tests/twohost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7618386Z "line": 684 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7619063Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7619593Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7620246Z "path": "crates/spt-daemon/tests/twohost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7621085Z "line": 1102 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7621705Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7622228Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7622748Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7627662Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7628286Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7629057Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7629677Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7630321Z "path": "crates/spt-daemon/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7631139Z "line": 572 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7631754Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7632289Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7632914Z "path": "crates/spt-daemon/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7633734Z "line": 636 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7634335Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7634870Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7635500Z "path": "crates/spt-daemon/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7636341Z "line": 740 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7636954Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7637494Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7638146Z "path": "crates/spt-daemon/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7639032Z "line": 772 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7639632Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7640170Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7640794Z "path": "crates/spt-daemon/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7641633Z "line": 840 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7642248Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7642782Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7643412Z "path": "crates/spt-daemon/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7644228Z "line": 898 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7644834Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7645378Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7646013Z "path": "crates/spt-daemon/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7646835Z "line": 1173 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7647443Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7647973Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7648631Z "path": "crates/spt-daemon/src/notifsync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7649568Z "line": 157 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7650167Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7650691Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7651354Z "path": "crates/spt-daemon/src/notifsync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7652203Z "line": 250 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7652817Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7653347Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7654006Z "path": "crates/spt-daemon/src/notifsync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7654850Z "line": 273 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7655451Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7655985Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7656634Z "path": "crates/spt-daemon/src/psyrelay.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7657509Z "line": 355 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7658117Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7658647Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7659367Z "path": "crates/spt-daemon/src/psyrelay.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7660208Z "line": 392 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7660804Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7661504Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7662172Z "path": "crates/spt-daemon/tests/notifsync.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7663006Z "line": 131 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7663716Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7664246Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7664866Z "path": "crates/spt-net/src/net/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7665668Z "line": 72 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7666254Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7666774Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7667399Z "path": "crates/spt-net/src/net/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7668215Z "line": 97 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7668802Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7669412Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7670056Z "path": "crates/spt-store/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7670853Z "line": 379 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7671454Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7671979Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7672599Z "path": "crates/spt-store/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7673422Z "line": 417 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7674019Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7674548Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7675174Z "path": "crates/spt-store/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7675989Z "line": 433 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7676589Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7677124Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7677750Z "path": "crates/spt-store/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7678549Z "line": 472 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7679262Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7679795Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7680415Z "path": "crates/spt-store/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7681216Z "line": 489 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7681819Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7682348Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7682973Z "path": "crates/spt-store/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7683785Z "line": 517 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7684388Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7684922Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7685552Z "path": "crates/spt-store/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7686351Z "line": 548 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7686960Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7687483Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7688104Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7688916Z "line": 745 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7689613Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7690137Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7690638Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7691139Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7691628Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7692117Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7692622Z "id": "REQ-NOTIF-2", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7693828Z "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-21T09:42:01.7695153Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7695773Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7696312Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7696859Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7697400Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7697921Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7698435Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7699060Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7699640Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7700286Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7700874Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7701437Z "path": "CONTEXT.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7702136Z "line": 509 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7702750Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7703278Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7703850Z "path": "docs/MANIFEST.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7704586Z "line": 123 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7705188Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7705723Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7706233Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7706477Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7706733Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7706981Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7707216Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7707556Z "path": "crates/spt-daemon/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7707913Z "line": 287 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7708147Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7708467Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7708810Z "path": "crates/spt-daemon/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7709115Z "line": 301 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7709359Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7709596Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7709935Z "path": "crates/spt-daemon/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7710182Z "line": 326 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7710419Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7710661Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7711010Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7711252Z "line": 239 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7711485Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7711719Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7712071Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7712317Z "line": 95 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7712555Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7712791Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7713084Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7713343Z "line": 2225 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7713577Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7713814Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7714105Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7714357Z "line": 2274 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7714591Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7714826Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7715121Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7715369Z "line": 2353 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7715611Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7715835Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7716136Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7716379Z "line": 2392 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7716621Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7716860Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7717090Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7717328Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7717599Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7717851Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7718088Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7718455Z "path": "crates/spt-daemon/tests/twohost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7718707Z "line": 810 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7718940Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7719251Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7719594Z "path": "crates/spt-daemon/tests/twohost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7719846Z "line": 1345 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7720080Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7720314Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7720548Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7720784Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7721035Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7721289Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7721522Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7721856Z "path": "crates/spt-daemon/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7722103Z "line": 1022 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7722346Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7722585Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7722928Z "path": "crates/spt-daemon/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7723182Z "line": 1090 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7723418Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7723654Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7723945Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7724198Z "line": 8210 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7724432Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7724674Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7724965Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7725223Z "line": 8265 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7725452Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7725686Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7725929Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7726157Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7726386Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7726609Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7726862Z "id": "REQ-PAIR-1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7727176Z "title": "TOTP-seeded SPAKE2 pairing", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7727444Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7727792Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7728030Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7728270Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7728592Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7728842Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7729167Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7729424Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7729672Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7729897Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7730145Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7730402Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7730654Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7730874Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7731269Z "path": "crates/spt-net/src/net/pairing/spake.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7731511Z "line": 27 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7731733Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7731976Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7732353Z "path": "crates/spt-net/src/net/pairing/spake.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7732611Z "line": 88 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7732897Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7733117Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7733502Z "path": "crates/spt-net/src/net/pairing/spake.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7733742Z "line": 110 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7733983Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7734214Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7734596Z "path": "crates/spt-net/src/net/pairing/spake.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7734844Z "line": 153 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7735073Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7735302Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7735674Z "path": "crates/spt-net/src/net/pairing/spake.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7735932Z "line": 182 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7736169Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7736407Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7736783Z "path": "crates/spt-net/src/net/pairing/totp.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7737032Z "line": 29 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7737271Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7737504Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7737938Z "path": "crates/spt-net/src/net/pairing/transcript.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7738181Z "line": 31 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7738419Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7738657Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7739119Z "path": "crates/spt-net/src/net/pairing/wire.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7739373Z "line": 44 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7739617Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7739851Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7740209Z "path": "crates/spt-net/src/net/pairing/wire.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7740467Z "line": 171 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7740705Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7740933Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7741305Z "path": "crates/spt-net/src/net/pairing/wire.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7741548Z "line": 376 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7741791Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7742024Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7742269Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7742513Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7742776Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7743028Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7743262Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7743630Z "path": "crates/spt-daemon/tests/twohost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7743877Z "line": 645 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7744125Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7744354Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7744708Z "path": "crates/spt-daemon/tests/twohost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7744961Z "line": 887 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7745194Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7745432Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7745671Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7745914Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7746178Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7746424Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7746663Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7747039Z "path": "crates/spt-net/src/net/pairing/spake.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7747291Z "line": 236 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7747530Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7747883Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7748273Z "path": "crates/spt-net/src/net/pairing/spake.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7748650Z "line": 349 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7748889Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7749184Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7749550Z "path": "crates/spt-net/src/net/pairing/totp.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7749797Z "line": 194 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7750030Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7750258Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7750626Z "path": "crates/spt-net/src/net/pairing/totp.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7750873Z "line": 216 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7751098Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7751327Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7751699Z "path": "crates/spt-net/src/net/pairing/totp.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7751953Z "line": 230 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7752176Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7752403Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7752777Z "path": "crates/spt-net/src/net/pairing/totp.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7753012Z "line": 242 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7753260Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7753488Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7753851Z "path": "crates/spt-net/src/net/pairing/totp.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7754093Z "line": 256 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7754327Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7754566Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7754928Z "path": "crates/spt-net/src/net/pairing/totp.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7755184Z "line": 270 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7755416Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7755640Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7756006Z "path": "crates/spt-net/src/net/pairing/totp.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7756255Z "line": 277 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7756489Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7756718Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7757090Z "path": "crates/spt-net/src/net/pairing/totp.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7757338Z "line": 295 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7757566Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7757814Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7758176Z "path": "crates/spt-net/src/net/pairing/wire.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7758424Z "line": 968 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7758653Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7758880Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7759354Z "path": "crates/spt-net/src/net/pairing/wire.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7759603Z "line": 1051 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7759830Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7760064Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7760437Z "path": "crates/spt-net/src/net/pairing/wire.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7760682Z "line": 1121 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7760909Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7761147Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7761516Z "path": "crates/spt-net/src/net/pairing/wire.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7761772Z "line": 1182 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7762011Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7762250Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7762616Z "path": "crates/spt-net/src/net/pairing/wire.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7762866Z "line": 1238 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7763102Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7763332Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7763704Z "path": "crates/spt-net/src/net/pairing/wire.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7763952Z "line": 1457 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7764191Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7764430Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7764663Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7764902Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7765126Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7765355Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7765615Z "id": "REQ-PAIR-2", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7766014Z "title": "Local trust store with TOFU + warn-on-change", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7766276Z "requiredStages": [], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7766519Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7766763Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7767011Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7767373Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7767608Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7767840Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7768209Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7768454Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7768693Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7768927Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7769275Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7769523Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7769760Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7769999Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7770257Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7770501Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7770728Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7770959Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7771184Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7771407Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7771664Z "id": "REQ-PAIR-3", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7772081Z "title": "Fetch current pairing code from any paired node", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7772347Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7772580Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7772828Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7773054Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7773301Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7773547Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7773799Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7774056Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7774293Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7774522Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7774766Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7775010Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7775252Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7775538Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7775786Z "line": 3259 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7776025Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7776262Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7776551Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7776803Z "line": 3328 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7777037Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7777271Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7777572Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7777819Z "line": 3709 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7778057Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7778295Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7778600Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7778850Z "line": 4961 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7779158Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7779400Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7779634Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7779873Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7780126Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7780383Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7780612Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7780845Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7781113Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7781354Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7781595Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7781882Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7782135Z "line": 9964 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7782364Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7782607Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7782907Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7783150Z "line": 10179 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7783393Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7783628Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7783929Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7784183Z "line": 10838 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7784415Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7784645Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7784931Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7785188Z "line": 10857 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7785420Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7785664Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7785955Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7786204Z "line": 10881 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7786442Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7786669Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7786967Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7787216Z "line": 10900 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7787574Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7787812Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7788098Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7788437Z "line": 10913 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7788670Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7788913Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7789280Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7789536Z "line": 10922 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7789766Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7790004Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7790237Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7790462Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7790687Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7790914Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7791172Z "id": "REQ-PAIR-4", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7791491Z "title": "Subnet naming on first pairing", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7791753Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7791986Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7792218Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7792451Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7792690Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7792929Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7793191Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7793447Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7793682Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7793920Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7794179Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7794431Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7794668Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7795004Z "path": "crates/spt-store/src/subnet.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7795248Z "line": 174 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7795491Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7795724Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7795962Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7796196Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7796463Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7796712Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7796935Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7797178Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7797434Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7797690Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7797928Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7798300Z "path": "crates/spt-net/src/net/pairing/wire.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7798557Z "line": 1294 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7798786Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7799101Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7799326Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7799559Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7799783Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7800017Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7800273Z "id": "REQ-PAIR-5", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7801213Z "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-21T09:42:01.7801470Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7801708Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7801942Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7802177Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7802408Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7802639Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7802874Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7803136Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7803378Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7803612Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7803846Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7804109Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7804351Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7804585Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7804967Z "path": "crates/spt-net/src/net/pairing/meet.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7805200Z "line": 44 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7805441Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7805664Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7806046Z "path": "crates/spt-net/src/net/pairing/meet.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7806289Z "line": 96 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7806527Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7806756Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7807127Z "path": "crates/spt-net/src/net/pairing/meet.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7807376Z "line": 107 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7807611Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7807851Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7808226Z "path": "crates/spt-net/src/net/pairing/meet.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7808575Z "line": 124 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7808913Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7809233Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7809619Z "path": "crates/spt-net/src/net/pairing/meet.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7809867Z "line": 155 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7810100Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7810338Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7810709Z "path": "crates/spt-net/src/net/pairing/meet.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7810958Z "line": 195 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7811192Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7811425Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7811802Z "path": "crates/spt-net/src/net/pairing/meet.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7812044Z "line": 251 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7812278Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7812507Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7812926Z "path": "crates/spt-net/src/net/pairing/rendezvous.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7813167Z "line": 33 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7813415Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7813653Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7814073Z "path": "crates/spt-net/src/net/pairing/rendezvous.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7814321Z "line": 45 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7814544Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7818643Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7819239Z "path": "crates/spt-net/src/net/pairing/rendezvous.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7819526Z "line": 59 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7819760Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7819997Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7820384Z "path": "crates/spt-net/src/net/pairing/wire.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7820636Z "line": 376 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7820870Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7821105Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7821345Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7821583Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7821842Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7822090Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7822338Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7822725Z "path": "crates/spt-daemon/tests/twohost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7822968Z "line": 887 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7823210Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7823448Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7823822Z "path": "crates/spt-net/src/net/pairing/meet.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7824080Z "line": 342 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7824300Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7824522Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7824747Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7824985Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7825248Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7825496Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7825729Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7826111Z "path": "crates/spt-net/src/net/pairing/meet.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7826358Z "line": 293 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7826590Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7826827Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7827200Z "path": "crates/spt-net/src/net/pairing/meet.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7827462Z "line": 304 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7827699Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7827933Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7828315Z "path": "crates/spt-net/src/net/pairing/meet.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7828548Z "line": 406 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7828783Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7829072Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7829513Z "path": "crates/spt-net/src/net/pairing/rendezvous.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7829767Z "line": 72 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7829995Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7830233Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7830644Z "path": "crates/spt-net/src/net/pairing/rendezvous.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7830886Z "line": 82 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7831129Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7831364Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7831792Z "path": "crates/spt-net/src/net/pairing/rendezvous.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7832220Z "line": 100 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7832459Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7832688Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7833199Z "path": "crates/spt-net/src/net/pairing/rendezvous.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7833441Z "line": 110 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7833674Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7833914Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7834330Z "path": "crates/spt-net/src/net/pairing/rendezvous.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7834583Z "line": 125 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7834825Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7835059Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7835451Z "path": "crates/spt-net/src/net/pairing/wire.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7835693Z "line": 1044 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7835937Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7836171Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7836551Z "path": "crates/spt-net/src/net/pairing/wire.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7836801Z "line": 1110 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7837032Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7837273Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7837639Z "path": "crates/spt-net/src/net/pairing/wire.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7837892Z "line": 1357 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7838127Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7838361Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7838598Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7838827Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7839142Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7839372Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7839632Z "id": "REQ-PAIR-6", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7840421Z "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-21T09:42:01.7840689Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7840928Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7841160Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7841394Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7841623Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7841858Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7842115Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7842371Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7842605Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7842838Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7843086Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7843338Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7843568Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7843868Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7844121Z "line": 3328 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7844364Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7844596Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7844895Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7845134Z "line": 3709 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7845362Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7845595Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7845924Z "path": "crates/spt/src/elevation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7846172Z "line": 18 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7846406Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7846641Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7846961Z "path": "crates/spt/src/elevation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7847207Z "line": 49 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7847440Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7847668Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7847987Z "path": "crates/spt/src/elevation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7848239Z "line": 318 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7848476Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7848702Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7848931Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7849241Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7849493Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7849740Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7849978Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7850211Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7850452Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7850705Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7850939Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7851225Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7851464Z "line": 10935 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7851692Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7851921Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7852211Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7852574Z "line": 10952 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7852808Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7853147Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7853475Z "path": "crates/spt/src/elevation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7853723Z "line": 383 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7853951Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7854175Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7854495Z "path": "crates/spt/src/elevation.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7854743Z "line": 392 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7854968Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7855204Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7855436Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7855665Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7855893Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7856127Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7856385Z "id": "REQ-PAIR-7", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7856866Z "title": "Subnet icon (inline image metadata, GUI-only consumer)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7857128Z "requiredStages": [], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7857371Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7857610Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7857873Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7858128Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7858369Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7858609Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7858871Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7859190Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7859428Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7859671Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7859938Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7860182Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7860421Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7860662Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7860912Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7861166Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7861395Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7861632Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7861852Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7862091Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7862349Z "id": "REQ-PAIR-8", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7866235Z "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-21T09:42:01.7866521Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7866768Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7866992Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7867231Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7867475Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7867717Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7867974Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7868217Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7868462Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7868707Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7869034Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7869282Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7869521Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7869888Z "path": "crates/spt-daemon/src/pairhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7870141Z "line": 577 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7870384Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7870613Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7870995Z "path": "crates/spt-net/src/net/pairing/ntp.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7871241Z "line": 22 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7871486Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7871722Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7872107Z "path": "crates/spt-net/src/net/pairing/ntp.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7872355Z "line": 76 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7872589Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7872822Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7873195Z "path": "crates/spt-net/src/net/pairing/ntp.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7873446Z "line": 127 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7873670Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7873910Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7874146Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7874375Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7874752Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7874995Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7875234Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7875562Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7875826Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7876079Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7876310Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7876699Z "path": "crates/spt-net/src/net/pairing/ntp.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7876942Z "line": 183 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7877176Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7877410Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7877786Z "path": "crates/spt-net/src/net/pairing/ntp.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7878045Z "line": 195 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7878282Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7878520Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7878888Z "path": "crates/spt-net/src/net/pairing/ntp.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7879205Z "line": 211 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7879432Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7879681Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7880039Z "path": "crates/spt-net/src/net/pairing/ntp.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7880296Z "line": 227 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7880530Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7880768Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7880996Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7881222Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7881454Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7881692Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7881953Z "id": "REQ-PICKER-1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7892818Z "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-21T09:42:01.7893118Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7893356Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7893589Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7893823Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7894067Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7894305Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7894557Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7894824Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7895063Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7895300Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7895571Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7895815Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7896054Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7896382Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7896641Z "line": 248 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7896875Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7897112Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7897445Z "path": "crates/spt/src/picker/model.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7897690Z "line": 263 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7897929Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7898168Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7898410Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7898635Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7898897Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7899221Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7899470Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7899717Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7900080Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7900331Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7900562Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7900986Z "path": "crates/spt-store/src/info.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7901244Z "line": 476 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7901478Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7901708Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7902032Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7902289Z "line": 753 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7902527Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7902774Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7903119Z "path": "crates/spt/src/picker/model.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7903368Z "line": 886 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7903601Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7903830Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7904154Z "path": "crates/spt/src/picker/view.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7904402Z "line": 455 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7904650Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7904885Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7905108Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7905346Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7905562Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7905803Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7906065Z "id": "REQ-PICKER-2", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7911643Z "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-21T09:42:01.7911924Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7912161Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7912396Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7912640Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7912874Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7913111Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7913377Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7913633Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7913866Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7914103Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7914366Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7914610Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7914854Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7915210Z "path": "crates/spt-store/src/branchstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7915464Z "line": 183 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7915697Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7915930Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7916263Z "path": "crates/spt/src/picker/data.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7916498Z "line": 296 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7916740Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7916977Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7917207Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7917441Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7917704Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7917951Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7918184Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7918432Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7918684Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7918930Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7919263Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7919617Z "path": "crates/spt-store/src/branchstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7919869Z "line": 655 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7920098Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7920337Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7920572Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7920799Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7921032Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7921258Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7921518Z "id": "REQ-PICKER-3", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7928725Z "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-21T09:42:01.7929338Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7929610Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7929848Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7930081Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7930320Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7930558Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7930812Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7931063Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7931302Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7931559Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7931799Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7932049Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7932290Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7932619Z "path": "crates/spt/src/picker/data.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7932868Z "line": 124 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7933107Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7933349Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7933582Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7933825Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7934080Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7934333Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7934550Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7934786Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7935048Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7935301Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7935534Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7935868Z "path": "crates/spt/src/picker/data.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7936116Z "line": 369 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7936354Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7936594Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7936831Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7937065Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7937295Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7937522Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7937788Z "id": "REQ-PICKER-4", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7943499Z "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-21T09:42:01.7943776Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7944024Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7944263Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7944505Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7944748Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7944987Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7945252Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7945493Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7945736Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7945976Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7946228Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7946486Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7946719Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7947082Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7947329Z "line": 353 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7947563Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7947783Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7948115Z "path": "crates/spt/src/picker/data.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7948353Z "line": 105 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7948587Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7948821Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7949226Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7949465Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7949718Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7950062Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7950303Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7950539Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7950806Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7951059Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7951293Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7951641Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7951888Z "line": 1246 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7952112Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7952346Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7952670Z "path": "crates/spt/src/picker/data.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7952915Z "line": 427 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7953145Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7953368Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7953602Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7953835Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7954064Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7954308Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7954560Z "id": "REQ-PICKER-5", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7963659Z "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-21T09:42:01.7963971Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7964201Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7964439Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7964681Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7964924Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7965158Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7965412Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7965674Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7965902Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7966140Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7966396Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7966647Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7966880Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7967172Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7967425Z "line": 1802 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7967659Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7967892Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7968125Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7968369Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7968627Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7968875Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7969173Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7969412Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7969665Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7969904Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7970122Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7970427Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7970671Z "line": 7526 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7970910Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7971139Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7971371Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7971607Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7971827Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7972059Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7972384Z "id": "REQ-PICKER-ADAPTER-DESCRIPTION", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7976433Z "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-21T09:42:01.7976905Z "requiredStages": [], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7977145Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7977393Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7977642Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7977895Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7978128Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7978366Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7978614Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7978863Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7979159Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7979402Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7979657Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7979910Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7980144Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7980392Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7980644Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7980902Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7981141Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7981375Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7981602Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7981836Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7982125Z "id": "REQ-PICKER-HISTORY-FRESH", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7985387Z "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-21T09:42:01.7985664Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7985908Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7986135Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7986373Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7986612Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7986861Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7987119Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7987364Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7987605Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7987849Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7988107Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7988353Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7988693Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7989075Z "path": "crates/spt/src/picker/data.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7989327Z "line": 275 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7989570Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7989803Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7990039Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7990274Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7990537Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7990781Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7991014Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7991253Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7991514Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7991758Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7991996Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7992335Z "path": "crates/spt/src/picker/data.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7992591Z "line": 400 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7992831Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7993051Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7993295Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7993519Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7993742Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7993976Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7994272Z "id": "REQ-PICKER-ONLINE-ACTION", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7998852Z "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-21T09:42:01.7999282Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7999520Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.7999882Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8000116Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8000354Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8000589Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8000849Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8001102Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8001336Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8001584Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8001836Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8002079Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8002318Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8002656Z "path": "crates/spt/src/picker/model.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8002909Z "line": 654 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8003137Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8003367Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8003597Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8003841Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8004099Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8004350Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8004589Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8004822Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8005081Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8005329Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8005567Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8005904Z "path": "crates/spt/src/picker/model.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8006154Z "line": 1078 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8006389Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8006621Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8006956Z "path": "crates/spt/src/picker/model.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8007202Z "line": 1092 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8007437Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8007676Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8007910Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8008143Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8008362Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8008599Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8008869Z "id": "REQ-PICKER-UX-V013", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8013601Z "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-21T09:42:01.8013890Z "requiredStages": [], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8014125Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8014368Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8014639Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8014891Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8015120Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8015359Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8015618Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8015864Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8016102Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8016351Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8016607Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8016857Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8017086Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8017340Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8017597Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8017845Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8018087Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8018316Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8018546Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8018780Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8019116Z "id": "REQ-PRES-1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8023010Z "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-21T09:42:01.8023404Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8023644Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8023974Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8024209Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8024441Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8024690Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8024933Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8025180Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8025432Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8025652Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8025943Z "path": "docs/DEFERRED.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8026192Z "line": 11 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8026429Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8026663Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8026892Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8027134Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8027388Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8027646Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8027876Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8028229Z "path": "crates/spt-daemon/src/dispatch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8028486Z "line": 515 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8028725Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8029035Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8029379Z "path": "crates/spt-daemon/src/dispatch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8029633Z "line": 567 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8029861Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8030100Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8030424Z "path": "crates/spt-daemon/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8030667Z "line": 188 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8030914Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8031143Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8031477Z "path": "crates/spt-daemon/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8031725Z "line": 214 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8031964Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8032193Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8032539Z "path": "crates/spt-daemon/src/presence.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8032786Z "line": 28 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8033026Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8033274Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8033617Z "path": "crates/spt-daemon/src/presence.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8033866Z "line": 105 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8034103Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8034336Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8034689Z "path": "crates/spt-daemon/src/presence.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8034931Z "line": 161 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8035163Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8035391Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8035735Z "path": "crates/spt-daemon/src/presence.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8035992Z "line": 180 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8036222Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8036461Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8036823Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8037077Z "line": 421 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8037309Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8037537Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8037896Z "path": "crates/spt-daemon/src/shellwake.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8038150Z "line": 289 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8038393Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8038631Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8039037Z "path": "crates/spt-daemon/src/shellwake.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8039285Z "line": 336 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8039518Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8039746Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8040099Z "path": "crates/spt-daemon/src/shellwake.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8040355Z "line": 362 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8040588Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8040825Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8041174Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8041422Z "line": 100 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8041665Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8041899Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8042142Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8042375Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8042637Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8042886Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8043219Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8043591Z "path": "crates/spt-daemon/tests/dispatch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8043929Z "line": 563 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8044168Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8044402Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8044745Z "path": "crates/spt-daemon/tests/twohost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8044993Z "line": 747 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8045220Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8045453Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8045796Z "path": "crates/spt-daemon/tests/twohost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8046053Z "line": 1165 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8046290Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8046533Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8046758Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8046992Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8047244Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8047483Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8047721Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8051873Z "path": "crates/spt-daemon/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8052159Z "line": 674 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8052407Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8052640Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8053013Z "path": "crates/spt-daemon/src/presence.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8053250Z "line": 238 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8053493Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8053717Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8054065Z "path": "crates/spt-daemon/src/presence.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8054313Z "line": 269 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8054546Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8054780Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8055133Z "path": "crates/spt-daemon/src/presence.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8055391Z "line": 305 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8055625Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8055857Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8056216Z "path": "crates/spt-daemon/src/presence.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8056459Z "line": 336 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8056703Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8056933Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8057304Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8057557Z "line": 1217 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8057795Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8058029Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8058381Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8058634Z "line": 1163 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8058871Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8059185Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8059412Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8059650Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8059880Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8060114Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8060371Z "id": "REQ-RC-1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8066455Z "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-21T09:42:01.8066748Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8066992Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8067230Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8067474Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8067706Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8067945Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8068188Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8068437Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8068689Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8068913Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8069227Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8069487Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8069891Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8070136Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8070559Z "path": "crates/spt-daemon/src/brain.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8070808Z "line": 944 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8071037Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8071276Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8071610Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8071869Z "line": 2100 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8072105Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8072330Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8072673Z "path": "crates/spt-daemon/src/nethost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8072912Z "line": 1017 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8073150Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8073384Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8073726Z "path": "crates/spt-daemon/src/nethost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8073979Z "line": 1051 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8074215Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8074448Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8074750Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8074999Z "line": 22 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8075233Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8075467Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8075762Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8076005Z "line": 701 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8076244Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8076482Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8076716Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8076962Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8077213Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8077462Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8077695Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8078043Z "path": "crates/spt-daemon/tests/attach.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8078296Z "line": 258 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8078543Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8078772Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8079197Z "path": "crates/spt-daemon/tests/attach.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8079449Z "line": 285 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8079693Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8079930Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8080271Z "path": "crates/spt-daemon/tests/attach.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8080519Z "line": 413 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8080757Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8080982Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8081216Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8081448Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8081711Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8081950Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8082184Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8082520Z "path": "crates/spt-daemon/src/nethost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8082765Z "line": 1415 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8082999Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8083224Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8083525Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8083768Z "line": 1133 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8084005Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8084240Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8084535Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8084784Z "line": 1162 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8085018Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8085244Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8085535Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8085788Z "line": 1175 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8086023Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8086255Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8086485Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8086709Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8086948Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8087166Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8087461Z "id": "REQ-RC-KEY-VT-TRANSLATE", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8104326Z "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-21T09:42:01.8104869Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8105107Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8105345Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8105585Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8105818Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8106056Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8106299Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8106552Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8106804Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8107046Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8107314Z "path": "CONTEXT.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8107552Z "line": 345 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8107796Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8108034Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8108339Z "path": "docs/KNOWN-HAZARDS.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8108576Z "line": 440 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8108814Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8109099Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8109332Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8109570Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8109833Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8110086Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8110320Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8110615Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8110848Z "line": 226 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8111087Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8111322Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8111615Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8111869Z "line": 285 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8112099Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8112333Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8112620Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8112877Z "line": 300 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8113110Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8113353Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8113634Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8113874Z "line": 315 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8114110Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8114337Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8114633Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8114867Z "line": 364 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8115105Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8115347Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8115577Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8115811Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8116078Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8116334Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8116573Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8116817Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8117192Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8117436Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8117769Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8118060Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8118318Z "line": 1190 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8118546Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8118784Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8119141Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8119388Z "line": 1305 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8119630Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8119858Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8120093Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8120322Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8120551Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8120774Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8121047Z "id": "REQ-RC-MOUSE-FORWARD", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8133740Z "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-21T09:42:01.8134055Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8134292Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8134530Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8134774Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8135009Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8135254Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8135481Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8135735Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8135987Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8136220Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8136525Z "path": "docs/KNOWN-HAZARDS.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8136777Z "line": 461 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8137011Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8137246Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8137489Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8137731Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8137988Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8138232Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8138455Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8138750Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8139080Z "line": 421 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8139323Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8139566Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8139858Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8140112Z "line": 437 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8140338Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8140579Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8140808Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8141041Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8141307Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8141551Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8141781Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8142010Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8142271Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8142510Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8142858Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8143148Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8143493Z "line": 1440 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8143737Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8143966Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8144266Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8144509Z "line": 1459 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8144748Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8144982Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8145273Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8145531Z "line": 1471 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8145771Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8146017Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8146304Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8146557Z "line": 1499 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8146795Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8147032Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8147252Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8147487Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8147724Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8147953Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8148229Z "id": "REQ-RC-WIN-PASTE", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8161976Z "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-21T09:42:01.8162271Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8162515Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8162752Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8162991Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8163224Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8163464Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8163711Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8163969Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8164221Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8164449Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8164762Z "path": "docs/KNOWN-HAZARDS.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8165000Z "line": 447 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8165233Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8165463Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8165687Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8165934Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8166192Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8166449Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8166684Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8166973Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8167223Z "line": 395 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8167457Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8167701Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8167991Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8168230Z "line": 411 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8168588Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8168821Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8169189Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8169570Z "line": 454 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8169801Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8170035Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8170341Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8170589Z "line": 468 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8170818Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8171051Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8171342Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8171594Z "line": 479 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8171820Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8172051Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8172288Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8172523Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8172780Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8173022Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8173250Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8173489Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8173757Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8174010Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8174242Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8174538Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8174785Z "line": 1381 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8175019Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8175240Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8175526Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8175779Z "line": 1402 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8176008Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8176247Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8176523Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8176766Z "line": 1423 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8177000Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8177235Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8177475Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8177712Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8177942Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8178175Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8178432Z "id": "REQ-RCVIEW-1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8191428Z "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-21T09:42:01.8191733Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8191977Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8192215Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8192453Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8192691Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8192931Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8193181Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8193417Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8193675Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8193914Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8194152Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8194567Z "path": "CONTEXT.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8194820Z "line": 342 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8195057Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8195387Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8195635Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8195869Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8196134Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8196370Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8196618Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8196966Z "path": "crates/spt-daemon/src/attach.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8197210Z "line": 375 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8197458Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8197687Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8198021Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8198268Z "line": 682 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8198501Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8198739Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8199152Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8199415Z "line": 693 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8199653Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8199886Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8200230Z "path": "crates/spt-net/src/net/attach.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8200487Z "line": 41 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8200725Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8200960Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8201284Z "path": "crates/spt-net/src/net/attach.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8201525Z "line": 62 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8201759Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8201984Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8202298Z "path": "crates/spt-store/src/info.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8202541Z "line": 309 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8202775Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8203008Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8203299Z "path": "crates/spt/src/rc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8203538Z "line": 701 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8203760Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8204001Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8204235Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8204474Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8204732Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8204969Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8205213Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8205556Z "path": "crates/spt-daemon/tests/attach.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8205809Z "line": 913 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8206043Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8206277Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8206608Z "path": "crates/spt-daemon/tests/attach.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8206854Z "line": 953 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8207094Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8207318Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8207661Z "path": "crates/spt-daemon/tests/attach.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8207918Z "line": 1000 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8208146Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8208384Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8208723Z "path": "crates/spt-daemon/tests/attach.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8209061Z "line": 1112 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8209308Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8209545Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8209783Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8210026Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8210289Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8210538Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8210765Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8211095Z "path": "crates/spt-net/src/net/attach.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8211347Z "line": 175 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8211585Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8211811Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8212153Z "path": "crates/spt-net/src/net/attach.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8212410Z "line": 195 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8212653Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8212891Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8213135Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8213369Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8213597Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8213835Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8214093Z "id": "REQ-REACH-1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8214514Z "title": "Off-node remote-drive detection + file transfer", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8214876Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8215214Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8215453Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8215682Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8215921Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8216163Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8216411Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8216674Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8216928Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8217169Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8217405Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8217668Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8217911Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8218149Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8218483Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8218735Z "line": 682 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8219055Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8219283Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8219612Z "path": "crates/spt-daemon/src/xfer.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8219864Z "line": 76 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8220100Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8220334Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8220658Z "path": "crates/spt-daemon/src/xfer.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8220916Z "line": 222 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8221145Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8221384Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8221708Z "path": "crates/spt-daemon/src/xfer.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8221965Z "line": 422 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8222194Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8222428Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8222747Z "path": "crates/spt-daemon/src/xfer.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8222994Z "line": 529 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8223232Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8223456Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8223776Z "path": "crates/spt-net/src/net/xfer.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8224019Z "line": 39 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8224244Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8224486Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8224790Z "path": "crates/spt-store/src/info.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8225055Z "line": 301 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8225289Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8225527Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8225857Z "path": "crates/spt-store/src/xfer.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8226094Z "line": 88 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8226337Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8226562Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8226886Z "path": "crates/spt-store/src/xfer.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8227130Z "line": 98 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8227358Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8227586Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8227922Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8228176Z "line": 233 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8228409Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8228637Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8228876Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8229190Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8229481Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8229721Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8229964Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8230315Z "path": "crates/spt-daemon/tests/dispatch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8230560Z "line": 415 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8230799Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8231038Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8231404Z "path": "crates/spt-daemon/tests/dispatch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8231658Z "line": 520 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8231895Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8232120Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8232472Z "path": "crates/spt-daemon/tests/twohost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8232706Z "line": 998 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8232946Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8233187Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8233521Z "path": "crates/spt-daemon/tests/twohost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8233778Z "line": 1383 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8234012Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8234364Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8234598Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8234828Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8235181Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8235422Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8235653Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8235982Z "path": "crates/spt-daemon/src/xfer.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8236240Z "line": 639 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8236474Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8236708Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8237032Z "path": "crates/spt-daemon/src/xfer.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8237279Z "line": 660 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8237512Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8237738Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8238072Z "path": "crates/spt-daemon/tests/attach.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8238317Z "line": 768 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8238558Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8238788Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8239197Z "path": "crates/spt-daemon/tests/xfer.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8239464Z "line": 93 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8239698Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8239933Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8240267Z "path": "crates/spt-daemon/tests/xfer.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8240524Z "line": 224 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8240756Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8240988Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8241307Z "path": "crates/spt-net/src/net/xfer.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8241550Z "line": 96 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8241783Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8242017Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8242337Z "path": "crates/spt-net/src/net/xfer.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8242590Z "line": 146 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8242819Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8243051Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8243361Z "path": "crates/spt-store/src/info.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8243614Z "line": 698 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8243857Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8244091Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8244401Z "path": "crates/spt-store/src/xfer.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8244652Z "line": 118 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8244887Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8245121Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8245440Z "path": "crates/spt-store/src/xfer.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8245693Z "line": 148 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8245925Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8246161Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8246504Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8246752Z "line": 928 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8246982Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8247219Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8247458Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8247687Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8247926Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8248149Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8248406Z "id": "REQ-REACH-2", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8248839Z "title": "Remote command execution (deferred, consent-gated)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8249190Z "requiredStages": [], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8249443Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8249686Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8249944Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8250188Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8250425Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8250659Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8250926Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8251180Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8251416Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8251657Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8251910Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8252173Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8252396Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8252648Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8252911Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8253159Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8253398Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8253631Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8253869Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8254099Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8254503Z "id": "REQ-READY-AGENT-RESUME", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8264429Z "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-21T09:42:01.8264838Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8265082Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8265321Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8265559Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8265797Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8266031Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8266265Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8266504Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8266760Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8267012Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8267249Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8267516Z "path": "CONTEXT.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8267768Z "line": 372 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8267982Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8268221Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8268445Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8268693Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8269027Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8269283Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8269551Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8269864Z "path": "crates/spt-msg/src/ready.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8270121Z "line": 110 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8270353Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8270592Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8270821Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8271059Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8271313Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8271555Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8271798Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8272190Z "path": "crates/spt/tests/ready_resume_ledger_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8272441Z "line": 26 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8272669Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8272887Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8273125Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8273359Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8273616Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8273870Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8274093Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8274408Z "path": "crates/spt-msg/src/ready.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8274651Z "line": 320 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8274885Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8275119Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8275355Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8275585Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8275819Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8276052Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8276300Z "id": "REQ-REL-1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8277496Z "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-21T09:42:01.8277762Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8278004Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8278241Z "impl" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8278480Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8278729Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8279034Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8279297Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8279701Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8279941Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8280582Z "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-21T09:42:01.8280918Z "line": 3 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8281157Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8281381Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8281610Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8281849Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8282106Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8282359Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8282593Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8282954Z "path": ".github/workflows/docs-publish.yml", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8283197Z "line": 11 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8283433Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8283661Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8283966Z "path": "crates/xtask/src/main.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8284215Z "line": 265 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8284444Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8284691Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8284915Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8285163Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8285427Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8285684Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8285930Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8286164Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8286417Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8286666Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8286893Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8287127Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8287371Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8287600Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8287852Z "id": "REQ-REL-2", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8289427Z "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-21T09:42:01.8289689Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8289932Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8290157Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8290390Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8290642Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8290877Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8291128Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8291383Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8291622Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8291922Z "path": "docs/RELEASE-RUNBOOK.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8296006Z "line": 6 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8296292Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8296523Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8296762Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8297016Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8297273Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8297521Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8297768Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8298111Z "path": ".github/workflows/release.yml", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8298355Z "line": 16 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8298598Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8298831Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8299249Z "path": "crates/xtask/src/main.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8299530Z "line": 352 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8299768Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8299991Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8300287Z "path": "crates/xtask/src/main.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8300535Z "line": 426 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8300761Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8301003Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8301303Z "path": "crates/xtask/src/main.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8301545Z "line": 588 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8301778Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8302010Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8302310Z "path": "crates/xtask/src/main.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8302563Z "line": 720 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8302797Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8303026Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8303264Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8303503Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8303760Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8304009Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8304240Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8304777Z "path": "crates/spt/tests/release_verify_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8305026Z "line": 13 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8305364Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8305602Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8305836Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8306074Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8306321Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8306585Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8306815Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8307045Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8307285Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8307514Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8307766Z "id": "REQ-REL-3", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8309191Z "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-21T09:42:01.8309462Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8309693Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8309932Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8310161Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8310409Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8310653Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8310909Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8311171Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8311400Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8311641Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8311903Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8312143Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8312389Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8312732Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8312985Z "line": 237 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8313220Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8313452Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8313800Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8314043Z "line": 289 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8314282Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8314517Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8314810Z "path": "crates/xtask/src/main.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8315055Z "line": 329 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8315309Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8315543Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8315843Z "path": "crates/xtask/src/main.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8316092Z "line": 353 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8316333Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8316563Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8316854Z "path": "crates/xtask/src/main.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8317107Z "line": 394 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8317341Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8317572Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8317803Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8318030Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8318292Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8318535Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8318765Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8319084Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8319343Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8319595Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8319822Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8320187Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8320444Z "line": 1045 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8320678Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8320917Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8321246Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8321498Z "line": 1104 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8321731Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8321965Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8322205Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8322433Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8322670Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8322894Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8323159Z "id": "REQ-RUN-PICKER", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8336677Z "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-21T09:42:01.8337207Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8337449Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8337688Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8337922Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8338156Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8338398Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8338631Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8338899Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8339218Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8339462Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8339728Z "path": "CONTEXT.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8339975Z "line": 349 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8340209Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8340434Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8340662Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8340909Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8341161Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8341403Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8341631Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8341936Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8342189Z "line": 958 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8342428Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8342667Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8342963Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8343209Z "line": 968 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8343434Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8343674Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8344000Z "path": "crates/spt/src/picker/data.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8344251Z "line": 9 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8344484Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8344705Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8345038Z "path": "crates/spt/src/picker/data.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8345277Z "line": 67 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8345515Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8345752Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8346072Z "path": "crates/spt/src/picker/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8346329Z "line": 16 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8346553Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8346789Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8347108Z "path": "crates/spt/src/picker/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8347361Z "line": 254 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8347595Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8347820Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8348144Z "path": "crates/spt/src/picker/model.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8348387Z "line": 11 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8348624Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8348862Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8349263Z "path": "crates/spt/src/picker/model.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8349506Z "line": 115 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8349740Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8349973Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8350307Z "path": "crates/spt/src/picker/model.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8350559Z "line": 554 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8350793Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8351150Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8351488Z "path": "crates/spt/src/picker/model.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8351848Z "line": 635 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8352082Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8352316Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8352641Z "path": "crates/spt/src/picker/model.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8352889Z "line": 694 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8353130Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8353365Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8353688Z "path": "crates/spt/src/picker/model.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8353937Z "line": 747 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8354172Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8354417Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8354748Z "path": "crates/spt/src/picker/model.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8354997Z "line": 785 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8355240Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8355465Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8355784Z "path": "crates/spt/src/picker/view.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8356032Z "line": 8 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8356270Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8356504Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8356743Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8356984Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8357244Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8357493Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8357717Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8357950Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8358197Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8358441Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8358671Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8359033Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8359286Z "line": 7638 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8359528Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8359770Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8360048Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8360291Z "line": 7649 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8360528Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8360752Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8361081Z "path": "crates/spt/src/picker/model.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8361320Z "line": 879 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8361569Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8361787Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8362115Z "path": "crates/spt/src/picker/model.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8362356Z "line": 928 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8362591Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8362824Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8363144Z "path": "crates/spt/src/picker/model.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8363400Z "line": 979 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8363634Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8363853Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8364182Z "path": "crates/spt/src/picker/model.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8364422Z "line": 996 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8364659Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8364888Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8365214Z "path": "crates/spt/src/picker/model.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8365472Z "line": 1005 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8365706Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8365947Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8366282Z "path": "crates/spt/src/picker/model.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8366530Z "line": 1016 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8366763Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8367002Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8367337Z "path": "crates/spt/src/picker/model.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8367587Z "line": 1038 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8367827Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8368058Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8368387Z "path": "crates/spt/src/picker/model.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8368634Z "line": 1057 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8368868Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8369172Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8369517Z "path": "crates/spt/src/picker/model.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8369769Z "line": 1107 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8370006Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8370242Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8370683Z "path": "crates/spt/src/picker/model.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8370932Z "line": 1136 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8371256Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8371485Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8371819Z "path": "crates/spt/src/picker/model.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8372062Z "line": 1149 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8372304Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8372537Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8372873Z "path": "crates/spt/src/picker/model.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8373122Z "line": 1215 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8373355Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8373593Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8373912Z "path": "crates/spt/src/picker/model.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8374161Z "line": 1256 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8374395Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8374619Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8374944Z "path": "crates/spt/src/picker/model.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8375191Z "line": 1272 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8375424Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8375657Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8375984Z "path": "crates/spt/src/picker/view.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8376236Z "line": 491 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8376474Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8376714Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8377028Z "path": "crates/spt/src/picker/view.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8377281Z "line": 506 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8377515Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8377762Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8378076Z "path": "crates/spt/src/picker/view.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8378326Z "line": 524 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8378570Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8378793Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8379209Z "path": "crates/spt/src/picker/view.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8379448Z "line": 546 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8379685Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8379914Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8380242Z "path": "crates/spt/src/picker/view.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8380492Z "line": 556 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8380721Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8380962Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8381281Z "path": "crates/spt/src/picker/view.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8381530Z "line": 582 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8381769Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8382002Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8382239Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8382468Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8382704Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8382936Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8383202Z "id": "REQ-RUN-SHORTCUT", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8396539Z "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-21T09:42:01.8397042Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8397270Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8397510Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8397753Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8397972Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8398205Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8398439Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8398702Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8399022Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8399253Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8399527Z "path": "CONTEXT.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8399775Z "line": 390 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8400010Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8400238Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8400471Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8400715Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8400968Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8401217Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8401449Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8401803Z "path": "crates/spt/src/picker/shortcut.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8402049Z "line": 39 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8402288Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8402517Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8402860Z "path": "crates/spt/src/picker/shortcut.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8403117Z "line": 79 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8403350Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8403594Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8403932Z "path": "crates/spt/src/picker/shortcut.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8404176Z "line": 162 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8404408Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8404635Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8404869Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8405098Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8405360Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8405612Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8405851Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8406085Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8406347Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8406600Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8406828Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8407170Z "path": "crates/spt/src/picker/shortcut.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8407417Z "line": 206 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8407655Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8407878Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8408217Z "path": "crates/spt/src/picker/shortcut.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8408474Z "line": 222 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8408708Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8409037Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8409375Z "path": "crates/spt/src/picker/shortcut.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8409624Z "line": 238 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8409856Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8410092Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8410440Z "path": "crates/spt/src/picker/shortcut.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8410688Z "line": 251 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8410922Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8411162Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8411509Z "path": "crates/spt/src/picker/shortcut.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8411753Z "line": 258 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8411990Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8412223Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8412454Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8412685Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8412905Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8413139Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8413411Z "id": "REQ-SEAM-ACTIVITY", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8413939Z "title": "Activity/idle reported via api sentinels, not PTY quiescence", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8414197Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8414431Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8414671Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8414902Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8415133Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8415368Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8415734Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8415992Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8416225Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8416569Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8416825Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8417069Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8417303Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8417632Z "path": "crates/spt/src/api/delivery.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8417892Z "line": 18 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8418119Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8418353Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8418682Z "path": "crates/spt/src/api/delivery.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8418930Z "line": 35 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8419254Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8419484Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8419818Z "path": "crates/spt/src/api/delivery.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8420056Z "line": 72 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8420293Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8420525Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8420767Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8421005Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8421272Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8421526Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8421755Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8421998Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8422255Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8422522Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8422755Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8423098Z "path": "crates/spt/src/api/delivery.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8423337Z "line": 239 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8423560Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8423798Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8424122Z "path": "crates/spt/src/api/delivery.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8424371Z "line": 256 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8424601Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8424833Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8425172Z "path": "crates/spt/src/api/delivery.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8425414Z "line": 265 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8425660Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8425893Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8426137Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8426375Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8426609Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8426834Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8427114Z "id": "REQ-SEAM-CAPABILITY", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8427539Z "title": "Hostable endpoint-types capability declaration", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8427802Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8428040Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8428272Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8428504Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8428742Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8429047Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8429313Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8429561Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8429805Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8430039Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8430296Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8430539Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8430778Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8431127Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8431366Z "line": 598 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8431609Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8431846Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8432076Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8432315Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8432572Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8432829Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8433063Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8433288Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8433541Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8433791Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8434025Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8434358Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8434612Z "line": 967 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8434846Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8435083Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8435298Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8435528Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8435757Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8435984Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8436367Z "id": "REQ-SEAM-HISTORY", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8436902Z "title": "History subsystem (fetcher / locate-normalize / native store)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8437283Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8437517Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8437756Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8437989Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8438227Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8438470Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8438700Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8439018Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8439268Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8439497Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8439741Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8439998Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8440241Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8440474Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8440789Z "path": "crates/spt-live/src/echo.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8441032Z "line": 24 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8441262Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8441498Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8441825Z "path": "crates/spt-live/src/history.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8442068Z "line": 22 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8442331Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8442593Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8442823Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8443070Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8443332Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8443571Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8443801Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8444139Z "path": "crates/spt/tests/contract_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8444390Z "line": 260 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8444623Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8444853Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8445087Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8445319Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8445625Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8445868Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8446107Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8446422Z "path": "crates/spt-live/src/echo.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8446673Z "line": 171 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8446908Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8447142Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8447462Z "path": "crates/spt-live/src/echo.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8447710Z "line": 200 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8447954Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8448177Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8448487Z "path": "crates/spt-live/src/echo.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8448764Z "line": 220 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8449069Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8449317Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8449685Z "path": "crates/spt-live/src/history.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8449934Z "line": 199 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8450172Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8450400Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8450782Z "path": "crates/spt-live/src/history.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8451025Z "line": 219 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8451296Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8451541Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8451879Z "path": "crates/spt-live/src/history.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8452159Z "line": 244 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8452395Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8452624Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8452943Z "path": "crates/spt-live/src/history.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8453187Z "line": 276 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8453416Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8453649Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8453978Z "path": "crates/spt-live/src/history.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8454221Z "line": 297 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8454464Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8454690Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8455017Z "path": "crates/spt-live/src/history.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8455264Z "line": 324 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8455502Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8455737Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8455961Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8456194Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8456533Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8456767Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8457033Z "id": "REQ-SEAM-INJECT", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8457679Z "title": "inject-input methods configurable per activity-state", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8457946Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8458180Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8458422Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8458647Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8458886Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8459201Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8459468Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8459730Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8459957Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8460194Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8460446Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8460688Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8460908Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8461246Z "path": "crates/spt/src/api/delivery.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8461490Z "line": 19 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8461720Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8461962Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8462292Z "path": "crates/spt/src/api/delivery.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8462542Z "line": 111 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8462770Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8463008Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8463241Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8463470Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8463719Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8463958Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8464195Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8464438Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8464700Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8464940Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8465169Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8465505Z "path": "crates/spt/src/api/delivery.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8465752Z "line": 345 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8465983Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8466216Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8466550Z "path": "crates/spt/src/api/delivery.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8466803Z "line": 365 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8467031Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8467265Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8467500Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8467745Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8467972Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8468212Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8468492Z "id": "REQ-SEAM-POSTSPAWN", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8468869Z "title": "post-spawn / api bind seam with boot nonce", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8469217Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8469446Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8469685Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8469907Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8470164Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8470405Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8470655Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8470910Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8471144Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8471373Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8471617Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8471864Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8472112Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8472436Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8472689Z "line": 18 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8472915Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8473145Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8473467Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8473716Z "line": 431 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8473945Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8474174Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8474402Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8474631Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8474889Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8475133Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8475370Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8475603Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8475857Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8476109Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8476341Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8476675Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8477010Z "line": 881 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8477248Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8477486Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8477915Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8478163Z "line": 891 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8478396Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8478617Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8478851Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8479128Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8479358Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8479586Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8479862Z "id": "REQ-SEAM-PSYCHE", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8480264Z "title": "spawn-psyche seam (fresh + resume templates)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8480530Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8480764Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8481002Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8481239Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8481470Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8481713Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8481952Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8482215Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8482467Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8482691Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8482929Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8483193Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8483437Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8483673Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8483994Z "path": "crates/spt-live/src/psyche.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8484233Z "line": 19 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8484472Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8484705Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8485015Z "path": "crates/spt/src/api/live.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8485267Z "line": 12 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8485501Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8485727Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8486051Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8486294Z "line": 301 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8486540Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8486774Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8487012Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8487250Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8487512Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8487756Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8487999Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8488338Z "path": "crates/spt/tests/contract_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8488572Z "line": 259 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8488813Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8489111Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8489350Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8489598Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8489846Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8490093Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8490327Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8490666Z "path": "crates/spt-live/src/psyche.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8490909Z "line": 195 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8491144Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8491362Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8491685Z "path": "crates/spt-live/src/psyche.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8491926Z "line": 202 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8492165Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8496028Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8496419Z "path": "crates/spt-live/src/psyche.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8496690Z "line": 225 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8496931Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8497171Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8497505Z "path": "crates/spt-live/src/pulse.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8497753Z "line": 106 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8498001Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8498230Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8498555Z "path": "crates/spt-live/src/pulse.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8498793Z "line": 137 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8499117Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8499363Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8499694Z "path": "crates/spt-live/src/pulse.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8499934Z "line": 161 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8500168Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8500401Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8500625Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8501011Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8501245Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8501469Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8501732Z "id": "REQ-SEAM-RESUME", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8502364Z "title": "resume-session seam (fresh-with-preload / continue-existing)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8502629Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8502862Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8503097Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8503335Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8503569Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8503802Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8504060Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8504299Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8504532Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8504774Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8505034Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8505273Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8505505Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8505825Z "path": "crates/spt-live/src/resume.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8506077Z "line": 19 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8506316Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8506556Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8506779Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8507008Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8507269Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8507519Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8507755Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8507984Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8508233Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8508481Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8508714Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8509101Z "path": "crates/spt-live/src/resume.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8509344Z "line": 201 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8509576Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8509801Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8510127Z "path": "crates/spt-live/src/resume.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8510380Z "line": 223 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8510613Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8510846Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8511166Z "path": "crates/spt-live/src/resume.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8511429Z "line": 244 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8511663Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8511896Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8512129Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8512358Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8512579Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8512809Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8513070Z "id": "REQ-SEAM-SPAWN", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8513347Z "title": "spawn-session seam", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8513610Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8513848Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8514076Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8514314Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8514553Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8514787Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8515035Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8515287Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8515529Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8515761Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8516027Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8516271Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8516514Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8516866Z "path": "crates/spt-runtime/src/runtime.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8517120Z "line": 20 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8517359Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8517596Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8517825Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8518051Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8518306Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8518553Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8518784Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8519078Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8519332Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8519584Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8519817Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8520170Z "path": "crates/spt-runtime/src/runtime.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8520413Z "line": 608 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8520646Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8520878Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8521230Z "path": "crates/spt-runtime/src/runtime.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8521612Z "line": 615 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8521846Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8522165Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8522514Z "path": "crates/spt-runtime/src/runtime.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8522771Z "line": 721 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8523009Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8523233Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8523578Z "path": "crates/spt-runtime/src/runtime.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8523817Z "line": 727 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8524059Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8524288Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8524622Z "path": "crates/spt-runtime/src/runtime.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8524870Z "line": 752 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8525104Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8525333Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8525658Z "path": "crates/spt-runtime/src/runtime.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8525898Z "line": 789 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8526140Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8526383Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8526616Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8526836Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8527075Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8527290Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8527561Z "id": "REQ-SEAM-UPDATE", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8528033Z "title": "Adapter-update avenue (file-pull / delegated command)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8528296Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8528534Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8528766Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8529076Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8529314Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8529568Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8529820Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8530072Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8530306Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8530541Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8530803Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8531049Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8531271Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8531642Z "path": "crates/spt-daemon/src/adapter_update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8531886Z "line": 28 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8532135Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8532362Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8532740Z "path": "crates/spt-daemon/src/adapter_update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8532982Z "line": 88 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8533221Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8533451Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8533666Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8533892Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8534143Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8534386Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8534605Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8534848Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8535092Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8535340Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8535583Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8535951Z "path": "crates/spt-daemon/src/adapter_update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8536183Z "line": 326 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8536431Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8536672Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8537043Z "path": "crates/spt-daemon/src/adapter_update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8537292Z "line": 337 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8537525Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8537758Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8537997Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8538226Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8538455Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8538684Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8538931Z "id": "REQ-SEC-1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8540195Z "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-21T09:42:01.8540457Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8540695Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8540928Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8541167Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8541416Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8541647Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8541912Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8542279Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8542522Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8542756Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8543109Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8543362Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8543586Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8543935Z "path": "crates/spt-daemon/src/access.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8544172Z "line": 86 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8544410Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8544638Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8544985Z "path": "crates/spt-daemon/src/access.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8545233Z "line": 116 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8545465Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8545704Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8546038Z "path": "crates/spt-daemon/src/access.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8546290Z "line": 130 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8546521Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8546753Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8547085Z "path": "crates/spt-store/src/access.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8547327Z "line": 109 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8547566Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8547805Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8548133Z "path": "crates/spt-store/src/access.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8548376Z "line": 130 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8548600Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8548838Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8549229Z "path": "crates/spt-store/src/access.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8549482Z "line": 143 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8549717Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8549948Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8550277Z "path": "crates/spt-store/src/access.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8550530Z "line": 209 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8550759Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8550989Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8551322Z "path": "crates/spt-store/src/access.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8551560Z "line": 235 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8551803Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8552023Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8552317Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8552572Z "line": 5295 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8552805Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8553030Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8553264Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8553497Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8553759Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8554013Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8554251Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8554486Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8554737Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8554984Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8555212Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8555545Z "path": "crates/spt-daemon/src/access.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8555798Z "line": 142 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8556030Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8556265Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8556607Z "path": "crates/spt-daemon/src/access.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8556855Z "line": 194 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8557095Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8557333Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8557660Z "path": "crates/spt-daemon/src/access.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8557920Z "line": 235 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8558154Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8558388Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8558726Z "path": "crates/spt-daemon/tests/access.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8559027Z "line": 140 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8559265Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8559493Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8559827Z "path": "crates/spt-store/src/access.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8560060Z "line": 247 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8560296Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8560527Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8560856Z "path": "crates/spt-store/src/access.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8561114Z "line": 277 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8561339Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8561691Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8562015Z "path": "crates/spt-store/src/access.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8562368Z "line": 310 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8562606Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8562849Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8563171Z "path": "crates/spt-store/src/access.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8563414Z "line": 329 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8563652Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8563886Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8564215Z "path": "crates/spt-store/src/access.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8564458Z "line": 362 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8564701Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8564940Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8565259Z "path": "crates/spt-store/src/access.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8565511Z "line": 386 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8565744Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8565980Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8566261Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8566524Z "line": 8296 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8566749Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8566968Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8567210Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8567429Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8567655Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8567879Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8568154Z "id": "REQ-SEND-SPT-HOSTED", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8578733Z "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-21T09:42:01.8579117Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8579340Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8579580Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8579819Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8580046Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8580285Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8580524Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8580777Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8581030Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8581262Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8581506Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8581767Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8582015Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8582243Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8582577Z "path": "crates/spt-daemon/src/brain.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8582812Z "line": 1066 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8583050Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8583275Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8583608Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8583864Z "line": 1897 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8584086Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8584325Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8584606Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8584863Z "line": 2850 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8585101Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8585340Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8585570Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8585802Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8586175Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8586422Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8586740Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8587081Z "path": "crates/spt-daemon/tests/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8587334Z "line": 189 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8587564Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8587798Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8588136Z "path": "crates/spt-daemon/tests/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8588374Z "line": 524 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8588607Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8588832Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8589123Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8589355Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8589600Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8589854Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8590083Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8590402Z "path": "crates/spt-daemon/src/msg.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8590646Z "line": 952 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8590883Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8591112Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8591408Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8591667Z "line": 7486 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8591900Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8592136Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8592367Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8592609Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8592837Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8593066Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8593377Z "id": "REQ-SESSION-RESUME-TEMPLATE", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8612323Z "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-21T09:42:01.8612647Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8612876Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8613120Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8613356Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8613595Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8613820Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8614205Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8614440Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8614707Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8615144Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8615374Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8615771Z "path": "docs-site/src/harness-contract/manifest.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8616015Z "line": 130 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8616248Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8616481Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8616758Z "path": "docs/MANIFEST.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8617006Z "line": 96 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8617240Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8617478Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8617707Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8617941Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8618194Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8618444Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8618676Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8619120Z "path": "crates/spt-daemon/src/harnesshost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8619367Z "line": 77 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8619602Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8619841Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8620211Z "path": "crates/spt-daemon/src/harnesshost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8620456Z "line": 183 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8620684Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8620912Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8621257Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8621501Z "line": 222 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8621740Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8621967Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8622292Z "path": "crates/spt-store/src/sessions.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8622544Z "line": 71 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8622773Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8623009Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8623333Z "path": "crates/spt/src/picker/model.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8623576Z "line": 176 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8623812Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8624037Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8624270Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8624493Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8624747Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8624990Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8625225Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8625596Z "path": "crates/spt/tests/resume_template_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8625834Z "line": 25 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8626066Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8626299Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8626522Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8626755Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8627018Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8627256Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8627490Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8627853Z "path": "crates/spt-daemon/src/harnesshost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8628097Z "line": 341 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8628338Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8628567Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8628924Z "path": "crates/spt-daemon/src/harnesshost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8629274Z "line": 391 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8629504Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8629752Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8630091Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8630334Z "line": 1244 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8630562Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8630795Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8631124Z "path": "crates/spt-store/src/sessions.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8631369Z "line": 184 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8631610Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8631831Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8632165Z "path": "crates/spt-store/src/sessions.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8632404Z "line": 208 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8632643Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8632872Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8633206Z "path": "crates/spt-store/src/sessions.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8633453Z "line": 236 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8633796Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8634030Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8634358Z "path": "crates/spt/src/picker/model.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8634701Z "line": 945 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8634940Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8635165Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8635407Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8635636Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8635870Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8636095Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8636341Z "id": "REQ-SHELL-1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8639146Z "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-21T09:42:01.8639404Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8639637Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8639872Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8640112Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8640346Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8640575Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8640816Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8641065Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8641318Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8641552Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8641785Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8642041Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8642279Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8642506Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8642846Z "path": "crates/spt-daemon/src/linkhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8643088Z "line": 189 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8643312Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8643551Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8643893Z "path": "crates/spt-daemon/src/linkhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8644133Z "line": 268 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8644371Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8644604Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8644956Z "path": "crates/spt-daemon/src/shellchan.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8645214Z "line": 27 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8645443Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8645672Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8646010Z "path": "crates/spt-daemon/src/shellchan.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8646253Z "line": 52 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8646487Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8646721Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8647064Z "path": "crates/spt-daemon/src/shellchan.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8647311Z "line": 144 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8647546Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8647776Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8648123Z "path": "crates/spt-daemon/src/shellchan.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8648353Z "line": 176 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8648578Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8648810Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8649241Z "path": "crates/spt-daemon/src/shellhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8649478Z "line": 22 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8649716Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8649955Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8650295Z "path": "crates/spt-daemon/src/shellhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8650538Z "line": 65 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8650776Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8651000Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8651348Z "path": "crates/spt-daemon/src/shellhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8651596Z "line": 76 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8651835Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8652055Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8652404Z "path": "crates/spt-daemon/src/shellhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8652658Z "line": 151 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8652890Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8653129Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8653463Z "path": "crates/spt-daemon/src/shellhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8653711Z "line": 210 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8653929Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8654158Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8654611Z "path": "crates/spt-daemon/src/shellhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8654859Z "line": 259 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8655179Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8655408Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8655751Z "path": "crates/spt-daemon/src/shellhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8655994Z "line": 281 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8656227Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8656460Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8656803Z "path": "crates/spt-daemon/src/shellhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8657057Z "line": 294 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8657291Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8657529Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8657851Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8658092Z "line": 217 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8658326Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8658556Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8658899Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8659232Z "line": 233 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8659481Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8659723Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8660072Z "path": "crates/spt-store/src/shellinfo.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8660324Z "line": 41 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8660548Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8660781Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8661127Z "path": "crates/spt-store/src/shellinfo.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8661375Z "line": 222 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8661608Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8661842Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8662161Z "path": "crates/spt/src/api/delivery.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8662405Z "line": 173 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8662644Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8662867Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8663176Z "path": "crates/spt/src/api/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8663427Z "line": 354 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8663660Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8663889Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8664203Z "path": "crates/spt/src/api/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8664451Z "line": 419 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8664681Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8664915Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8665249Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8665492Z "line": 333 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8665725Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8665963Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8666258Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8666506Z "line": 6320 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8666739Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8666974Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8667268Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8667517Z "line": 6470 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8667751Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8667983Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8668269Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8668516Z "line": 6646 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8668743Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8669025Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8669258Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8669512Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8669816Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8670065Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8670327Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8672618Z "path": "crates/spt-daemon/tests/dispatch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8672894Z "line": 713 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8673122Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8673355Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8673731Z "path": "crates/spt-daemon/tests/shellchan.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8673968Z "line": 8 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8674206Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8674444Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8674797Z "path": "crates/spt-daemon/tests/shellchan.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8675040Z "line": 49 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8675269Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8675513Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8676003Z "path": "crates/spt-daemon/tests/twohost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8676256Z "line": 778 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8676632Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8676866Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8677214Z "path": "crates/spt-daemon/tests/twohost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8677462Z "line": 1213 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8677696Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8677909Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8678257Z "path": "crates/spt/tests/notify_shell_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8678505Z "line": 17 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8678740Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8679058Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8679380Z "path": "crates/spt/tests/shell_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8679642Z "line": 14 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8679875Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8680109Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8680343Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8680577Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8680829Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8681082Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8681316Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8681668Z "path": "crates/spt-daemon/src/shellchan.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8681920Z "line": 246 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8682161Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8682394Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8682747Z "path": "crates/spt-daemon/src/shellchan.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8682995Z "line": 279 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8683229Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8683454Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8683798Z "path": "crates/spt-daemon/src/shellchan.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8684045Z "line": 319 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8684273Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8684510Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8684853Z "path": "crates/spt-daemon/src/shellhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8685086Z "line": 599 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8685328Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8685548Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8685896Z "path": "crates/spt-daemon/src/shellhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8686144Z "line": 672 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8686374Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8686607Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8686951Z "path": "crates/spt-daemon/src/shellhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8687206Z "line": 816 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8687440Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8687679Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8688008Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8688261Z "line": 595 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8688488Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8688722Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8689166Z "path": "crates/spt-store/src/shellinfo.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8689418Z "line": 399 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8689660Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8689887Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8690188Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8690445Z "line": 8976 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8690702Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8690936Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8691232Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8691481Z "line": 9300 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8691714Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8691937Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8692238Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8692490Z "line": 9717 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8692731Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8692964Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8693199Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8693418Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8693656Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8693889Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8694142Z "id": "REQ-SHELL-2", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8698400Z "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-21T09:42:01.8698897Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8699217Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8699475Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8699731Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8699968Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8700206Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8700443Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8700705Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8700957Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8701192Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8701426Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8701688Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8701940Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8702164Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8702522Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8702779Z "line": 217 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8703026Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8703257Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8703606Z "path": "crates/spt-daemon/src/dispatch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8703858Z "line": 403 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8707965Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8708236Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8708598Z "path": "crates/spt-daemon/src/grants.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8708857Z "line": 250 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8709166Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8709438Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8709795Z "path": "crates/spt-daemon/src/lifecycle.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8710049Z "line": 403 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8710277Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8710519Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8710874Z "path": "crates/spt-daemon/src/linkhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8711117Z "line": 30 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8711361Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8711599Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8711953Z "path": "crates/spt-daemon/src/linkhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8712195Z "line": 409 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8712433Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8712672Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8713006Z "path": "crates/spt-daemon/src/linkhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8713264Z "line": 445 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8713491Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8713718Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8714051Z "path": "crates/spt-daemon/src/linkhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8714310Z "line": 660 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8714548Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8714776Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8715125Z "path": "crates/spt-daemon/src/resting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8715372Z "line": 348 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8715605Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8715836Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8716191Z "path": "crates/spt-daemon/src/shellchan.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8716446Z "line": 115 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8716689Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8716918Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8717271Z "path": "crates/spt-daemon/src/shellhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8717524Z "line": 120 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8717749Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8718002Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8718360Z "path": "crates/spt-daemon/src/shellhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8718607Z "line": 374 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8718853Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8719158Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8719525Z "path": "crates/spt-daemon/src/shellhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8719778Z "line": 500 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8720017Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8720261Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8720605Z "path": "crates/spt-daemon/src/shellwake.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8720846Z "line": 24 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8721065Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8721453Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8721806Z "path": "crates/spt-daemon/src/shellwake.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8722150Z "line": 76 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8722393Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8722622Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8722975Z "path": "crates/spt-daemon/src/shellwake.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8723284Z "line": 154 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8723524Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8723762Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8724104Z "path": "crates/spt-daemon/src/shellwake.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8724353Z "line": 177 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8724593Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8724827Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8725175Z "path": "crates/spt-daemon/src/shellwake.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8725418Z "line": 273 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8725661Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8725880Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8726224Z "path": "crates/spt-daemon/src/shellwake.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8726480Z "line": 456 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8726718Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8726964Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8727312Z "path": "crates/spt-daemon/src/shellwake.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8727564Z "line": 538 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8727803Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8728055Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8728399Z "path": "crates/spt-net/src/net/shelllink.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8728643Z "line": 27 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8728877Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8729167Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8729557Z "path": "crates/spt-net/src/net/shelllink.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8729799Z "line": 48 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8730038Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8730258Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8730596Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8730840Z "line": 517 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8731087Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8731316Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8731601Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8731858Z "line": 1921 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8732081Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8732304Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8732590Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8732829Z "line": 6334 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8733068Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8733282Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8733582Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8733825Z "line": 6395 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8734065Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8734304Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8734592Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8734843Z "line": 6423 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8735072Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8735306Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8735591Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8735853Z "line": 6477 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8736092Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8736321Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8736617Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8736865Z "line": 6732 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8737101Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8737329Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8737629Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8737877Z "line": 6792 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8738110Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8738358Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8738654Z "path": "crates/spt/src/wansend.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8738902Z "line": 298 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8739217Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8739475Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8739781Z "path": "crates/spt/src/wansend.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8740016Z "line": 339 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8740255Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8740485Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8740837Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8741076Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8741337Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8741687Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8741914Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8742270Z "path": "crates/spt-daemon/tests/dispatch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8742512Z "line": 706 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8742741Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8742970Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8743323Z "path": "crates/spt-daemon/tests/twohost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8743580Z "line": 778 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8743808Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8744038Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8744371Z "path": "crates/spt-daemon/tests/twohost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8744625Z "line": 1213 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8744854Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8745095Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8745478Z "path": "crates/spt/tests/shell_sleepwake_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8745717Z "line": 18 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8745956Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8746176Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8746418Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8746652Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8746919Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8747173Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8747396Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8747748Z "path": "crates/spt-daemon/src/linkhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8747988Z "line": 744 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8748223Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8748442Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8748781Z "path": "crates/spt-daemon/src/resting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8749100Z "line": 796 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8749348Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8749581Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8749925Z "path": "crates/spt-daemon/src/shellhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8750167Z "line": 705 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8750402Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8750648Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8750997Z "path": "crates/spt-daemon/src/shellhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8751239Z "line": 754 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8751478Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8751717Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8752069Z "path": "crates/spt-daemon/src/shellhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8752309Z "line": 778 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8752541Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8752769Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8753115Z "path": "crates/spt-daemon/src/shellwake.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8753368Z "line": 603 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8753602Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8753835Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8754184Z "path": "crates/spt-daemon/src/shellwake.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8754421Z "line": 624 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8754665Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8754885Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8755228Z "path": "crates/spt-daemon/src/shellwake.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8755472Z "line": 660 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8755707Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8755939Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8756282Z "path": "crates/spt-daemon/src/shellwake.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8756536Z "line": 714 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8756760Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8756988Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8757331Z "path": "crates/spt-daemon/src/shellwake.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8757579Z "line": 732 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8757822Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8758058Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8758394Z "path": "crates/spt-daemon/src/shellwake.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8758644Z "line": 766 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8758873Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8759183Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8759559Z "path": "crates/spt-daemon/src/shellwake.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8759798Z "line": 841 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8760132Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8760370Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8760713Z "path": "crates/spt-net/src/net/shelllink.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8761089Z "line": 85 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8761324Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8761562Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8761858Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8762109Z "line": 8044 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8762348Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8762573Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8762859Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8763107Z "line": 9054 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8763339Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8763567Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8763857Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8764109Z "line": 9124 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8764342Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8764576Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8764867Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8765130Z "line": 9162 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8765354Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8765587Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8765821Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8766051Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8766286Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8766513Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8766777Z "id": "REQ-SHELL-3", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8772151Z "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-21T09:42:01.8772447Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8772689Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8772932Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8773161Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8773401Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8773643Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8773871Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8774131Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8774383Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8774621Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8774845Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8775108Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8775352Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8775580Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8775914Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8776171Z "line": 229 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8776409Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8776640Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8776985Z "path": "crates/spt-daemon/src/drivehub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8777231Z "line": 36 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8777474Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8777699Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8778056Z "path": "crates/spt-daemon/src/drivehub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8778318Z "line": 137 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8778548Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8778781Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8779211Z "path": "crates/spt-daemon/src/drivehub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8779495Z "line": 153 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8779725Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8779960Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8780307Z "path": "crates/spt-daemon/src/drivehub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8780561Z "line": 165 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8780800Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8781028Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8781377Z "path": "crates/spt-daemon/src/drivehub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8781619Z "line": 242 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8781852Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8782074Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8782519Z "path": "crates/spt-daemon/src/drivehub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8782773Z "line": 267 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8783097Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8783326Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8783665Z "path": "crates/spt-daemon/src/drivehub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8783908Z "line": 293 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8784155Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8784383Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8784724Z "path": "crates/spt-daemon/src/endpoint.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8784968Z "line": 51 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8785205Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8785439Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8785777Z "path": "crates/spt-daemon/src/linkhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8786025Z "line": 333 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8786255Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8786489Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8786833Z "path": "crates/spt-daemon/src/linkhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8787080Z "line": 373 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8787322Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8787545Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8787897Z "path": "crates/spt-daemon/src/linkhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8788145Z "line": 602 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8788378Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8788606Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8789041Z "path": "crates/spt-daemon/src/shellchan.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8789293Z "line": 132 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8789536Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8789771Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8790112Z "path": "crates/spt-daemon/src/shellhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8790363Z "line": 448 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8790591Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8790830Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8791150Z "path": "crates/spt-proto/src/event.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8791393Z "line": 74 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8791622Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8791855Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8792213Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8792461Z "line": 605 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8792699Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8792932Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8793276Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8793524Z "line": 396 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8793756Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8793995Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8794295Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8794540Z "line": 6518 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8794772Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8795005Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8795237Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8795470Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8795727Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8795980Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8796214Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8796567Z "path": "crates/spt-daemon/tests/twohost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8796810Z "line": 1262 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8797054Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8797291Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8797630Z "path": "crates/spt/tests/drive_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8797872Z "line": 17 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8798114Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8798352Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8798579Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8798823Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8799148Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8799410Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8799649Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8799997Z "path": "crates/spt-daemon/src/drivehub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8800250Z "line": 311 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8800491Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8800728Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8801066Z "path": "crates/spt-daemon/src/drivehub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8801319Z "line": 325 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8801558Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8801891Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8802240Z "path": "crates/spt-daemon/src/drivehub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8802573Z "line": 343 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8802808Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8803030Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8803382Z "path": "crates/spt-daemon/src/drivehub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8803626Z "line": 364 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8803850Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8804079Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8804418Z "path": "crates/spt-daemon/src/drivehub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8804674Z "line": 376 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8804899Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8805133Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8805481Z "path": "crates/spt-daemon/src/linkhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8805727Z "line": 897 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8805962Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8806192Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8806530Z "path": "crates/spt-daemon/src/linkhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8806784Z "line": 957 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8807018Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8807260Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8807609Z "path": "crates/spt-daemon/src/shellchan.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8807861Z "line": 338 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8808094Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8808324Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8808628Z "path": "crates/spt/src/api/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8808878Z "line": 769 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8809188Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8809469Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8809765Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8810013Z "line": 8836 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8810252Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8810481Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8810705Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8810943Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8811175Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8811406Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8811659Z "id": "REQ-SHELL-4", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8817076Z "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-21T09:42:01.8817359Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8817588Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8817830Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8818063Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8818297Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8818528Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8818765Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8819068Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8819338Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8819596Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8819830Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8820107Z "path": "CONTEXT.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8820353Z "line": 281 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8820578Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8820812Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8821489Z "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-21T09:42:01.8821740Z "line": 88 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8821971Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8822210Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8822439Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8822674Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8822930Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8823187Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8823421Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8823769Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8824027Z "line": 243 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8824252Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8824594Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8824952Z "path": "crates/spt-daemon/src/endpoint.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8825299Z "line": 61 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8825538Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8825766Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8826119Z "path": "crates/spt-daemon/src/linkhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8826372Z "line": 218 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8826610Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8826842Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8827189Z "path": "crates/spt-daemon/src/linkhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8827441Z "line": 245 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8827679Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8827899Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8828248Z "path": "crates/spt-daemon/src/nethost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8828491Z "line": 616 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8828720Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8829030Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8829383Z "path": "crates/spt-daemon/src/nethost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8829638Z "line": 1191 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8829865Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8830113Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8830452Z "path": "crates/spt-daemon/src/nethost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8830705Z "line": 1203 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8830938Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8831171Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8831510Z "path": "crates/spt-daemon/src/nethost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8831752Z "line": 1244 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8831988Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8832219Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8832574Z "path": "crates/spt-daemon/src/shellhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8832827Z "line": 456 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8833070Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8833309Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8833643Z "path": "crates/spt-daemon/src/tunnelhub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8833892Z "line": 44 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8834129Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8834368Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8834721Z "path": "crates/spt-daemon/src/tunnelhub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8834982Z "line": 208 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8835216Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8835449Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8835807Z "path": "crates/spt-daemon/src/tunnelhub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8836045Z "line": 227 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8836288Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8836517Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8836865Z "path": "crates/spt-daemon/src/tunnelhub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8837119Z "line": 253 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8837355Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8837581Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8837934Z "path": "crates/spt-daemon/src/tunnelhub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8838188Z "line": 272 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8838417Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8838651Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8839065Z "path": "crates/spt-daemon/src/tunnelhub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8839323Z "line": 392 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8839590Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8839823Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8840170Z "path": "crates/spt-daemon/src/tunnelhub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8840406Z "line": 421 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8840641Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8840868Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8841213Z "path": "crates/spt-daemon/src/tunnelhub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8841459Z "line": 439 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8841684Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8841914Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8842266Z "path": "crates/spt-daemon/src/tunnelhub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8842515Z "line": 458 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8842750Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8842973Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8843321Z "path": "crates/spt-daemon/src/tunnelhub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8843564Z "line": 486 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8843936Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8844175Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8844527Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8844865Z "line": 624 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8845096Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8845324Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8845666Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8845914Z "line": 829 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8846153Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8846377Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8846720Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8846963Z "line": 435 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8847206Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8847425Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8847730Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8847987Z "line": 6574 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8848213Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8848452Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8848686Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8848920Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8849249Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8849515Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8849758Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8850092Z "path": "crates/spt/tests/tunnel_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8850344Z "line": 18 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8850579Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8850816Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8851042Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8851291Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8851548Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8851796Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8852039Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8852377Z "path": "crates/spt-daemon/src/nethost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8852639Z "line": 1479 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8852873Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8853108Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8853445Z "path": "crates/spt-daemon/src/nethost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8853695Z "line": 1508 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8853928Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8854158Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8854510Z "path": "crates/spt-daemon/src/tunnelhub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8854758Z "line": 504 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8855003Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8855231Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8855569Z "path": "crates/spt-daemon/src/tunnelhub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8855826Z "line": 514 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8856060Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8856298Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8856641Z "path": "crates/spt-daemon/src/tunnelhub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8856894Z "line": 531 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8857136Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8857361Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8857714Z "path": "crates/spt-daemon/src/tunnelhub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8857952Z "line": 543 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8858197Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8858437Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8858778Z "path": "crates/spt-daemon/src/tunnelhub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8859103Z "line": 555 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8859336Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8859585Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8859923Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8860171Z "line": 1145 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8860410Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8860633Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8860943Z "path": "crates/spt/src/api/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8861191Z "line": 776 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8861428Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8861660Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8861889Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8862123Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8862347Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8862579Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8862833Z "id": "REQ-SHELL-5", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8866420Z "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-21T09:42:01.8866891Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8867120Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8867363Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8867593Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8867822Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8868045Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8868278Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8868512Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8868771Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8869093Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8869328Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8869605Z "path": "CONTEXT.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8869839Z "line": 284 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8870083Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8870312Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8870544Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8870788Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8871046Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8871295Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8871532Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8871893Z "path": "crates/spt-daemon/src/shellhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8872144Z "line": 260 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8872368Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8872607Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8872849Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8873083Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8873331Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8873584Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8873823Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8874171Z "path": "crates/spt-daemon/tests/twohost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8874421Z "line": 827 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8874653Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8874893Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8875231Z "path": "crates/spt-daemon/tests/twohost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8875488Z "line": 1290 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8875726Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8875960Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8876370Z "path": "crates/spt/tests/gateway_owner_shell_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8876599Z "line": 23 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8876833Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8877063Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8877298Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8877537Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8877785Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8878029Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8878261Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8878605Z "path": "crates/spt-daemon/src/linkhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8878839Z "line": 803 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8879124Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8879360Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8879586Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8879818Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8880038Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8880266Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8880523Z "id": "REQ-START-1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8881109Z "title": "Adapters never resolve SPT_HOME; binary on PATH; api bridging only", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8881382Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8881616Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8881845Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8882078Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8882320Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8882558Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8882823Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8883080Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8883304Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8883543Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8883802Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8884043Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8884282Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8884611Z "path": "crates/spt-store/src/seed.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8884850Z "line": 16 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8885082Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8885318Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8885657Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8885895Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8886153Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8886506Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8886730Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8886954Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8887211Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8887454Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8887694Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8888008Z "path": "crates/spt-store/src/seed.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8888250Z "line": 48 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8888483Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8888713Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8889122Z "path": "crates/spt-store/src/seed.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8889365Z "line": 63 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8889605Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8889833Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8890065Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8890298Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8890521Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8890759Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8891016Z "id": "REQ-START-2", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8891422Z "title": "Harness-hosted startup: api seed then listen", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8891679Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8891918Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8892158Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8892391Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8892619Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8892852Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8893095Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8893335Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8897361Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8897624Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8897868Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8898130Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8898371Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8898601Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8898934Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8899258Z "line": 16 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8899502Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8899735Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8900084Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8900330Z "line": 115 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8900574Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8900797Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8901125Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8901382Z "line": 300 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8901610Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8901844Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8902078Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8902316Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8902568Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8902821Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8903051Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8903399Z "path": "crates/spt/tests/contract_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8903645Z "line": 186 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8903871Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8904096Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8904325Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8904559Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8904825Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8905069Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8905293Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8905632Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8905885Z "line": 590 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8906116Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8906353Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8906677Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8906925Z "line": 623 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8907164Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8907387Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8907621Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8907855Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8908084Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8908322Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8908569Z "id": "REQ-START-3", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8909166Z "title": "spt-hosted startup: spawn-session then api bind (no file)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8909437Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8909685Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8910057Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8910300Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8910529Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8910763Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8911100Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8911357Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8911613Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8911850Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8912089Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8912347Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8912586Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8912823Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8913162Z "path": "crates/spt-daemon/src/seedmap.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8913406Z "line": 23 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8913635Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8913865Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8914210Z "path": "crates/spt-daemon/src/seedmap.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8914460Z "line": 205 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8914694Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8914923Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8915277Z "path": "crates/spt-daemon/src/seedmap.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8915520Z "line": 221 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8915763Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8916000Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8916330Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8916577Z "line": 17 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8916810Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8917047Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8917375Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8917628Z "line": 35 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8917866Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8918096Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8918425Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8918673Z "line": 116 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8918911Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8919211Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8919444Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8919683Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8919935Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8920182Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8920398Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8920741Z "path": "crates/spt/tests/contract_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8920984Z "line": 488 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8921219Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8921461Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8921684Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8921917Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8922173Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8922425Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8922649Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8922992Z "path": "crates/spt-daemon/src/seedmap.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8923246Z "line": 381 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8923480Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8923707Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8924052Z "path": "crates/spt-daemon/src/seedmap.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8924304Z "line": 402 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8924528Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8924766Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8925117Z "path": "crates/spt-daemon/src/seedmap.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8925364Z "line": 412 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8925606Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8925837Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8926155Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8926390Z "line": 591 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8926618Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8926857Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8927170Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8927426Z "line": 624 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8927649Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8927883Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8928202Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8928436Z "line": 657 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8928665Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8928895Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8929205Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8929442Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8929671Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8930023Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8930287Z "id": "REQ-START-4", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8930685Z "title": "Adapter-injected env aliases (SPT/OWL/LIVE)", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8931019Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8931263Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8931498Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8931730Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8931968Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8932206Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8932473Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8932709Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8932938Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8933172Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8933434Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8933672Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8933901Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8934240Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8934487Z "line": 585 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8934712Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8934937Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8935169Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8935410Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8935672Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8935914Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8936143Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8936373Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8936621Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8936873Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8937102Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8937450Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8937702Z "line": 1026 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8937926Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8938167Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8938390Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8938625Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8938849Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8939150Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8939416Z "id": "REQ-START-5", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8947924Z "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-21T09:42:01.8948229Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8948466Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8948698Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8948937Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8949261Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8949514Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8949743Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8949986Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8950243Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8950495Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8950726Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8950993Z "path": "CONTEXT.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8951243Z "line": 176 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8951482Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8951711Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8952093Z "path": "docs-site/src/harness-contract/api.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8952341Z "line": 28 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8952579Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8952797Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8953022Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8953267Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8953522Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8953758Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8953992Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8954458Z "path": "crates/spt-runtime/src/resolve.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8954701Z "line": 26 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8955030Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8955269Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8955622Z "path": "crates/spt-runtime/src/resolve.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8955875Z "line": 212 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8956110Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8956340Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8956691Z "path": "crates/spt-runtime/src/resolve.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8956934Z "line": 221 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8957174Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8957403Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8957718Z "path": "crates/spt/src/api/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8957969Z "line": 485 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8958203Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8958437Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8958771Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8959092Z "line": 36 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8959326Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8959548Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8959868Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8960121Z "line": 118 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8960355Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8960570Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8960900Z "path": "crates/spt/src/api/startup.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8961137Z "line": 329 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8961375Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8961591Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8961822Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8962056Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8962310Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8962563Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8962800Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8963163Z "path": "crates/spt/tests/live_resolve_e2e.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8963406Z "line": 17 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8963639Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8963874Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8964106Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8964341Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8964590Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8964847Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8965082Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8965425Z "path": "crates/spt-runtime/src/resolve.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8965677Z "line": 358 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8965910Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8966144Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8966496Z "path": "crates/spt-runtime/src/resolve.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8966746Z "line": 371 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8966982Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8967223Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8967533Z "path": "crates/spt/src/api/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8967786Z "line": 597 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8968020Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8968249Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8968482Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8968715Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8969020Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8969270Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8969529Z "id": "REQ-STORE-1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8972354Z "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-21T09:42:01.8972616Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8972860Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8973099Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8973317Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8973565Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8973790Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8974057Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8974305Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8974532Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8974770Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8975031Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8975278Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8975618Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8975980Z "path": "crates/spt-store/src/branchstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8976314Z "line": 23 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8976552Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8976781Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8977128Z "path": "crates/spt-store/src/branchstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8977376Z "line": 46 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8977609Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8977850Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8978204Z "path": "crates/spt-store/src/branchstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8978455Z "line": 97 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8978689Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8978923Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8979371Z "path": "crates/spt-store/src/branchstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8979628Z "line": 125 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8979868Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8980104Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8980465Z "path": "crates/spt-store/src/branchstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8980717Z "line": 207 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8980946Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8981185Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8981542Z "path": "crates/spt-store/src/branchstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8981790Z "line": 231 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8982025Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8982258Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8982606Z "path": "crates/spt-store/src/branchstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8982848Z "line": 467 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8983082Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8983306Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8983668Z "path": "crates/spt-store/src/contextstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8983916Z "line": 25 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8984135Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8984369Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8984736Z "path": "crates/spt-store/src/contextstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8984984Z "line": 120 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8985221Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8985457Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8985824Z "path": "crates/spt-store/src/contextstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8986077Z "line": 148 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8986306Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8986540Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8986902Z "path": "crates/spt-store/src/contextstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8987151Z "line": 165 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8987373Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8987617Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8987983Z "path": "crates/spt-store/src/contextstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8988230Z "line": 180 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8988458Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8988691Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8989107Z "path": "crates/spt-store/src/contextstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8989359Z "line": 198 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8989602Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8989826Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8990198Z "path": "crates/spt-store/src/contextstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8990447Z "line": 207 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8990679Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8990914Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8991243Z "path": "crates/spt-store/src/project.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8991496Z "line": 16 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8991716Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8991955Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8992299Z "path": "crates/spt-store/src/project.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8992551Z "line": 63 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8992793Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8993017Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8993248Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8993474Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8993741Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8993990Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8994219Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8994457Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8994709Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8995072Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8995310Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8995676Z "path": "crates/spt-store/src/branchstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8996036Z "line": 584 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8996265Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8996505Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8996857Z "path": "crates/spt-store/src/branchstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8997105Z "line": 594 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8997343Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8997572Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8997910Z "path": "crates/spt-store/src/branchstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8998158Z "line": 616 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8998388Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8998615Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8999028Z "path": "crates/spt-store/src/branchstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8999275Z "line": 632 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8999509Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.8999738Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9000101Z "path": "crates/spt-store/src/branchstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9000349Z "line": 690 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9000588Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9000825Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9001191Z "path": "crates/spt-store/src/contextstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9001441Z "line": 472 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9001681Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9001915Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9002281Z "path": "crates/spt-store/src/contextstore.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9002525Z "line": 507 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9002767Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9002997Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9003349Z "path": "crates/spt-store/src/project.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9003596Z "line": 120 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9003837Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9004073Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9004407Z "path": "crates/spt-store/src/project.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9004659Z "line": 128 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9004889Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9005127Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9005351Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9005584Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9005818Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9006053Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9006308Z "id": "REQ-SUBNET-1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9007313Z "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-21T09:42:01.9007584Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9007826Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9008051Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9008295Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9008518Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9008761Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9009080Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9009340Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9009574Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9009821Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9010079Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9010332Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9010571Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9010937Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9011195Z "line": 281 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9011434Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9011661Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9012035Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9012283Z "line": 651 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9012526Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9012756Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9013061Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9013313Z "line": 3399 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9013547Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9013772Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9014058Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9014301Z "line": 3709 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9014533Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9014763Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9015238Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9015482Z "line": 3728 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9015810Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9016044Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9016350Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9016589Z "line": 3792 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9016820Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9017056Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9017339Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9017601Z "line": 3834 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9017829Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9018067Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9018358Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9018611Z "line": 4023 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9018836Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9019146Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9019442Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9019696Z "line": 4093 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9019928Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9020158Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9020454Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9020701Z "line": 4317 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9020934Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9021163Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9021450Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9021694Z "line": 4961 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9021927Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9022164Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9022486Z "path": "crates/spt/src/wansend.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9022749Z "line": 418 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9022987Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9023210Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9023435Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9023664Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9023926Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9024173Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9024412Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9024651Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9024900Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9025155Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9025384Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9025765Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9026005Z "line": 1584 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9026229Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9026466Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9026757Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9027010Z "line": 9964 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9027235Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9027471Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9027774Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9028022Z "line": 10134 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9028251Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9028476Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9028776Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9029091Z "line": 10141 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9029333Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9029576Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9029872Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9030116Z "line": 10194 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9030357Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9030597Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9030889Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9031146Z "line": 10211 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9031380Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9031609Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9031910Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9032157Z "line": 10241 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9032395Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9032626Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9032929Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9033174Z "line": 10357 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9033408Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9033642Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9033933Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9034182Z "line": 10508 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9034530Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9034767Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9035006Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9035235Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9035554Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9035782Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9036049Z "id": "REQ-SUBNET-2", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9036779Z "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-21T09:42:01.9037046Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9037293Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9037522Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9037748Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9037974Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9038215Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9038450Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9038702Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9039017Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9039235Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9039703Z "path": "docs/adr/0005-totp-seeded-spake2-node-pairing.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9039942Z "line": 60 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9040184Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9040422Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9040644Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9040894Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9041134Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9041383Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9041617Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9041960Z "path": "crates/spt-daemon/src/brain.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9042204Z "line": 886 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9042432Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9042670Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9043004Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9043261Z "line": 2122 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9043494Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9043729Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9044073Z "path": "crates/spt-daemon/src/nethost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9044321Z "line": 683 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9044555Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9044775Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9045132Z "path": "crates/spt-daemon/src/nethost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9045381Z "line": 867 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9045623Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9045856Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9046209Z "path": "crates/spt-daemon/src/pairhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9046462Z "line": 26 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9046691Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9046928Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9047272Z "path": "crates/spt-daemon/src/pairhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9047524Z "line": 60 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9047758Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9047988Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9048336Z "path": "crates/spt-daemon/src/pairhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9048577Z "line": 168 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9048822Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9049118Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9049519Z "path": "crates/spt-daemon/src/pairhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9049790Z "line": 295 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9050062Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9050292Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9050635Z "path": "crates/spt-daemon/src/pairhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9050879Z "line": 417 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9051117Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9051344Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9051718Z "path": "crates/spt-net/src/net/pairing/meet.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9051966Z "line": 252 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9052200Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9052435Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9052730Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9052968Z "line": 3755 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9053210Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9053436Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9053727Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9053977Z "line": 4256 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9054209Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9054444Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9054843Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9055096Z "line": 4892 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9055434Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9055660Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9055897Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9056131Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9056387Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9056633Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9056878Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9057246Z "path": "crates/spt-daemon/tests/pairjoin.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9057513Z "line": 22 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9057751Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9057985Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9058337Z "path": "crates/spt-daemon/tests/twohost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9058591Z "line": 645 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9058820Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9059137Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9059502Z "path": "crates/spt-daemon/tests/twohost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9059755Z "line": 887 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9059993Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9060227Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9060456Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9060690Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9060952Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9061186Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9061415Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9061759Z "path": "crates/spt-daemon/src/pairhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9062009Z "line": 586 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9062245Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9062466Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9062756Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9062999Z "line": 10004 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9063232Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9063462Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9063756Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9064001Z "line": 10715 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9064230Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9064447Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9064685Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9064912Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9065141Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9065371Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9065637Z "id": "REQ-SUBNET-3", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9066491Z "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-21T09:42:01.9066758Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9066991Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9067226Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9067453Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9067696Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9067934Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9068192Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9068441Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9068668Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9068907Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9069245Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9069488Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9069722Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9070097Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9070354Z "line": 152 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9070586Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9070820Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9071192Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9071436Z "line": 299 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9071680Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9071904Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9072281Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9072526Z "line": 443 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9072753Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9072978Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9073355Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9073612Z "line": 532 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9073835Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9074069Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9074412Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9074664Z "line": 125 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9075002Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9075245Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9075602Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9075982Z "line": 253 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9076226Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9076451Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9076804Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9077052Z "line": 264 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9077289Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9077522Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9077860Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9078114Z "line": 285 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9078347Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9078585Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9078928Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9079252Z "line": 621 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9079477Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9079701Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9083432Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9083723Z "line": 680 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9083971Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9084210Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9084577Z "path": "crates/spt-net/src/net/replicate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9084835Z "line": 61 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9085069Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9085301Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9085672Z "path": "crates/spt-net/src/net/replicate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9085932Z "line": 90 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9086171Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9086391Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9086763Z "path": "crates/spt-net/src/net/replicate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9087011Z "line": 125 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9087253Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9087483Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9087839Z "path": "crates/spt-store/src/hostlabel.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9088092Z "line": 9 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9088318Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9088549Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9088849Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9089188Z "line": 4093 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9089440Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9089669Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9089979Z "path": "crates/spt/src/wansend.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9090224Z "line": 445 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9090452Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9090684Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9090917Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9091144Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9091411Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9091654Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9091884Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9092118Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9092379Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9092618Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9092837Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9093223Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9093472Z "line": 1356 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9093709Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9093944Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9094322Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9094569Z "line": 1713 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9094799Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9095033Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9095404Z "path": "crates/spt-daemon/tests/dispatch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9095649Z "line": 892 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9095886Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9096114Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9096468Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9096713Z "line": 991 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9096951Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9097189Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9097528Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9097779Z "line": 1041 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9098147Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9098381Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9098729Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9099171Z "line": 1100 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9099405Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9099657Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9100024Z "path": "crates/spt-net/src/net/replicate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9100264Z "line": 234 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9100503Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9100741Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9101085Z "path": "crates/spt-store/src/hostlabel.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9101325Z "line": 49 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9101557Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9101791Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9102082Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9102330Z "line": 10357 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9102562Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9102792Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9103101Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9103337Z "line": 10463 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9103584Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9103822Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9104116Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9104373Z "line": 10681 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9104596Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9104829Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9105053Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9105283Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9105507Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9105735Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9105997Z "id": "REQ-SUBNET-4", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9106925Z "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-21T09:42:01.9107191Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9107425Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9107663Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9107892Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9108127Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9108373Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9108631Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9108883Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9109188Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9109679Z "path": "docs/adr/0005-totp-seeded-spake2-node-pairing.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9109926Z "line": 60 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9110166Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9110405Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9110628Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9110866Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9111123Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9111377Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9111601Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9111904Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9112150Z "line": 3399 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9112385Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9112623Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9112924Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9113175Z "line": 4859 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9113414Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9113648Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9113949Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9114202Z "line": 4892 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9114435Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9114667Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9114905Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9115142Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9115408Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9115656Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9115881Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9116125Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9116381Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9116638Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9116872Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9117173Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9117425Z "line": 10120 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9117655Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9117880Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9118180Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9118537Z "line": 10194 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9118762Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9119163Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9119396Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9119626Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9119854Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9120073Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9120335Z "id": "REQ-SUBNET-5", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9123683Z "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-21T09:42:01.9123950Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9124194Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9124419Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9124651Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9124880Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9125120Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9125370Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9125625Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9125883Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9126107Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9126346Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9126598Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9126851Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9127085Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9127427Z "path": "crates/spt-daemon/src/daemon.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9127677Z "line": 128 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9127908Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9128130Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9128483Z "path": "crates/spt-daemon/src/dispatch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9128722Z "line": 413 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9129037Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9129280Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9129642Z "path": "crates/spt-daemon/src/pairhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9129891Z "line": 74 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9130143Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9130371Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9130723Z "path": "crates/spt-daemon/src/pump/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9130985Z "line": 332 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9131215Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9131443Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9131792Z "path": "crates/spt-daemon/src/pump/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9132043Z "line": 621 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9132278Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9132512Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9132883Z "path": "crates/spt-daemon/src/serveprobe.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9133120Z "line": 31 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9133361Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9133585Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9133947Z "path": "crates/spt-daemon/src/serveprobe.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9134186Z "line": 50 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9134425Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9134664Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9135026Z "path": "crates/spt-daemon/src/serveprobe.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9135274Z "line": 69 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9135512Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9135741Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9136100Z "path": "crates/spt-daemon/src/serveprobe.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9136344Z "line": 113 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9136587Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9136824Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9137196Z "path": "crates/spt-net/src/net/serveprobe.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9137444Z "line": 25 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9137682Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9137917Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9138284Z "path": "crates/spt-net/src/net/serveprobe.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9138535Z "line": 34 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9138761Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9139067Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9139419Z "path": "crates/spt-store/src/attachment.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9139672Z "line": 17 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9140016Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9140250Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9140635Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9140883Z "line": 4817 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9141119Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9141345Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9141650Z "path": "crates/spt/src/wansend.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9141907Z "line": 419 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9142142Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9142376Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9142599Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9142828Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9143081Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9143330Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9143561Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9143917Z "path": "crates/spt-daemon/tests/dispatch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9144169Z "line": 821 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9144389Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9144618Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9144861Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9145099Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9145366Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9145610Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9145844Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9146188Z "path": "crates/spt-daemon/src/config.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9146442Z "line": 341 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9146670Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9146913Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9147261Z "path": "crates/spt-daemon/src/pump/mod.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9147504Z "line": 1115 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9147738Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9147976Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9148338Z "path": "crates/spt-daemon/src/serveprobe.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9148585Z "line": 151 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9148826Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9149147Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9149509Z "path": "crates/spt-net/src/net/serveprobe.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9149771Z "line": 61 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9149999Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9150232Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9150595Z "path": "crates/spt-store/src/attachment.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9150848Z "line": 111 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9151077Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9151307Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9151660Z "path": "crates/spt-store/src/attachment.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9151915Z "line": 138 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9152153Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9152388Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9152740Z "path": "crates/spt-store/src/attachment.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9152983Z "line": 148 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9153208Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9153445Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9153745Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9154003Z "line": 10021 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9154236Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9154472Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9154705Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9154935Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9155169Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9155406Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9155668Z "id": "REQ-SUBNET-6", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9157925Z "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-21T09:42:01.9158183Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9158427Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9158656Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9158889Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9159190Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9159428Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9159693Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9159935Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9160177Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9160407Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9160792Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9161040Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9161275Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9161708Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9161943Z "line": 254 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9162182Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9162413Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9162708Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9162962Z "line": 4475 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9163191Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9163429Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9163719Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9163972Z "line": 4492 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9164206Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9164446Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9164739Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9164989Z "line": 4545 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9165227Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9165452Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9165758Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9166010Z "line": 4568 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9166257Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9166477Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9166712Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9166960Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9167226Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9167482Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9167705Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9167942Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9168199Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9168452Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9168682Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9169049Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9169292Z "line": 10035 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9169536Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9169774Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9170068Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9170319Z "line": 10068 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9170552Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9170786Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9171081Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9171338Z "line": 10077 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9171568Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9171798Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9172030Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9172268Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9172498Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9172737Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9172992Z "id": "REQ-SUBNET-7", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9177844Z "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-21T09:42:01.9178137Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9178364Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9178618Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9178847Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9179166Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9179418Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9179675Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9179932Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9180163Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9180406Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9180661Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9180917Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9181161Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9181513Z "path": "crates/spt-daemon/src/machineid.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9181770Z "line": 17 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9182004Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9182232Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9182585Z "path": "crates/spt-daemon/src/pairhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9182838Z "line": 103 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9183186Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9183406Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9183857Z "path": "crates/spt-daemon/src/pairhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9184101Z "line": 312 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9184335Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9184558Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9184936Z "path": "crates/spt-daemon/src/pump/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9185179Z "line": 131 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9185407Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9185637Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9186005Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9186258Z "line": 160 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9186496Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9186734Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9187111Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9187349Z "line": 447 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9187592Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9187827Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9188199Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9188447Z "line": 670 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9188687Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9188924Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9189392Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9189639Z "line": 710 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9189864Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9190093Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9190459Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9190709Z "line": 766 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9190952Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9191179Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9191548Z "path": "crates/spt-net/src/net/pairing/wire.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9191801Z "line": 136 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9192040Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9192274Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9192608Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9192874Z "line": 139 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9193102Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9193336Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9193562Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9193799Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9194060Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9194309Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9194547Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9194785Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9195042Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9195281Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9195520Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9195873Z "path": "crates/spt-daemon/src/machineid.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9196126Z "line": 136 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9196362Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9196594Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9196946Z "path": "crates/spt-daemon/src/machineid.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9197199Z "line": 156 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9197438Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9197676Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9198048Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9198305Z "line": 987 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9198544Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9198787Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9199210Z "path": "crates/spt-daemon/src/registryhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9199470Z "line": 1009 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9199709Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9199938Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9200325Z "path": "crates/spt-net/src/net/pairing/wire.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9200572Z "line": 1419 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9200805Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9201034Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9201391Z "path": "crates/spt-net/src/net/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9201636Z "line": 1036 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9201872Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9202113Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9202347Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9202680Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9202909Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9203139Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9203405Z "id": "REQ-SUBNET-8", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9206742Z "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-21T09:42:01.9207022Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9207253Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9207492Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9207731Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9207965Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9208207Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9208465Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9208718Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9209032Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9209267Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9209534Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9209789Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9210031Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9210326Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9210584Z "line": 3835 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9210813Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9211050Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9211351Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9211603Z "line": 3864 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9211838Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9212072Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9212370Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9212616Z "line": 3881 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9212856Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9213084Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9213375Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9213626Z "line": 3904 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9213861Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9214095Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9214396Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9214649Z "line": 4318 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9214881Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9215100Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9215338Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9215571Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9215828Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9216068Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9216312Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9216544Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9216792Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9217039Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9217275Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9217573Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9217813Z "line": 10225 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9218048Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9218282Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9218577Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9218835Z "line": 10241 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9219160Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9219392Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9219626Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9219851Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9220084Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9220316Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9220576Z "id": "REQ-TERM-1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9221092Z "title": "Process-supervisor terminal wrapper hosting broker PTYs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9221353Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9221587Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9221826Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9222065Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9222307Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9222546Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9222798Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9223054Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9223271Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9223514Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9223768Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9224006Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9224245Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9224679Z "path": "crates/spt-term/src/pty.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9224922Z "line": 59 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9225247Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9225485Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9225807Z "path": "crates/spt-term/src/pty.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9226055Z "line": 234 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9226289Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9226514Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9226852Z "path": "crates/spt-term/src/surface.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9227099Z "line": 100 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9227328Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9227562Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9227782Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9228018Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9228283Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9228523Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9228756Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9229066Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9236439Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9236788Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9237025Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9237393Z "path": "crates/spt-term/tests/surface.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9237650Z "line": 24 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9237889Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9238127Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9238475Z "path": "crates/spt-term/tests/surface.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9238727Z "line": 56 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9239044Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9239287Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9239515Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9239745Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9239975Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9240198Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9240450Z "id": "REQ-TERM-2", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9241004Z "title": "session-surface abstraction; send-keys + send-line injection", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9241272Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9241513Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9241749Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9241983Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9242303Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9242537Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9242803Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9243041Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9243284Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9243523Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9243776Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9244026Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9244254Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9244592Z "path": "crates/spt-term/src/surface.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9244836Z "line": 117 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9245065Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9245297Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9245631Z "path": "crates/spt-term/src/surface.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9245870Z "line": 127 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9246099Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9246343Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9246571Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9246799Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9247062Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9247343Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9247571Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9247805Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9248072Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9248311Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9248549Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9248888Z "path": "crates/spt-term/tests/inject.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9249234Z "line": 46 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9249475Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9249718Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9250061Z "path": "crates/spt-term/tests/inject.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9250300Z "line": 77 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9250539Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9250758Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9250992Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9251226Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9251451Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9251678Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9251925Z "id": "REQ-TERM-3", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9252337Z "title": "Byte-stream remote terminal streaming for v1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9252838Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9253082Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9253407Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9253639Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9253887Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9254121Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9254370Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9254610Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9254842Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9255082Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9255330Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9255586Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9255815Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9256153Z "path": "crates/spt-term/src/stream.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9256397Z "line": 71 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9256627Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9256865Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9257093Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9257317Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9257569Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9257831Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9258055Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9258289Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9258556Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9258799Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9259114Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9259448Z "path": "crates/spt-term/tests/stream.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9259690Z "line": 37 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9259922Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9260150Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9260494Z "path": "crates/spt-term/tests/stream.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9260732Z "line": 67 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9260955Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9261189Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9261414Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9261642Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9261876Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9262106Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9262349Z "id": "REQ-TERM-4", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9263851Z "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-21T09:42:01.9264123Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9264352Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9264591Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9264815Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9265047Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9265281Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9265517Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9265774Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9266018Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9266247Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9266481Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9266738Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9266981Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9267206Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9267544Z "path": "crates/spt-daemon/src/digest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9267798Z "line": 37 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9268033Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9268267Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9268615Z "path": "crates/spt-daemon/src/digesthub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9268859Z "line": 25 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9269192Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9269431Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9269784Z "path": "crates/spt-daemon/src/digesthub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9270033Z "line": 114 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9270259Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9270496Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9270829Z "path": "crates/spt-daemon/src/digesthub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9271073Z "line": 267 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9271307Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9271539Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9271883Z "path": "crates/spt-daemon/src/digesthub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9272131Z "line": 289 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9272365Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9272599Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9272952Z "path": "crates/spt-daemon/src/digesthub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9273316Z "line": 307 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9273549Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9273786Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9274207Z "path": "crates/spt-store/src/history.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9274450Z "line": 33 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9274679Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9274913Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9278922Z "path": "crates/spt-term/src/projection.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9279295Z "line": 52 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9279528Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9279757Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9280124Z "path": "crates/spt-term/src/projection.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9280372Z "line": 180 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9280608Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9280824Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9281179Z "path": "crates/spt-term/src/projection.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9281423Z "line": 190 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9281657Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9281900Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9282257Z "path": "crates/spt-term/src/projection.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9282521Z "line": 250 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9282743Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9282977Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9283315Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9283564Z "line": 284 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9283792Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9284013Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9284342Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9284586Z "line": 295 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9284810Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9285043Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9285334Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9285577Z "line": 1193 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9285802Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9286032Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9286244Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9286490Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9286747Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9286995Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9287228Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9287576Z "path": "crates/spt-daemon/tests/digest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9287819Z "line": 18 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9288053Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9288269Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9288506Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9288734Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9289073Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9289312Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9289554Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9289884Z "path": "crates/spt-daemon/src/digest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9290136Z "line": 364 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9290369Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9290603Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9290932Z "path": "crates/spt-daemon/src/digest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9291168Z "line": 416 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9291408Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9291640Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9291978Z "path": "crates/spt-daemon/src/digest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9292212Z "line": 426 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9292442Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9292693Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9293056Z "path": "crates/spt-daemon/src/digesthub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9293304Z "line": 436 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9293537Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9293757Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9294110Z "path": "crates/spt-daemon/src/digesthub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9294342Z "line": 456 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9294582Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9294807Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9295164Z "path": "crates/spt-daemon/src/digesthub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9295432Z "line": 478 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9295666Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9295909Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9296258Z "path": "crates/spt-daemon/src/digesthub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9296639Z "line": 491 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9296861Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9297192Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9297541Z "path": "crates/spt-daemon/src/digesthub.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9297774Z "line": 502 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9298004Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9298238Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9298576Z "path": "crates/spt-store/src/history.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9298805Z "line": 108 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9299135Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9299367Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9299685Z "path": "crates/spt-term/src/digest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9299939Z "line": 119 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9300168Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9300401Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9300720Z "path": "crates/spt-term/src/digest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9300967Z "line": 127 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9301211Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9301437Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9301789Z "path": "crates/spt-term/src/projection.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9302035Z "line": 474 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9302271Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9302509Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9302867Z "path": "crates/spt-term/src/projection.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9303106Z "line": 501 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9303336Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9303563Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9303902Z "path": "crates/spt-term/src/projection.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9304169Z "line": 520 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9304412Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9304638Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9304992Z "path": "crates/spt-term/src/projection.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9305253Z "line": 535 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9305476Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9305696Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9306035Z "path": "crates/spt-term/src/projection.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9306287Z "line": 561 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9306518Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9306764Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9307109Z "path": "crates/spt-term/src/projection.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9307359Z "line": 581 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9307582Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9307815Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9308164Z "path": "crates/spt-term/src/projection.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9308406Z "line": 591 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9308639Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9308869Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9309288Z "path": "crates/spt-term/src/projection.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9309536Z "line": 683 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9309771Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9310005Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9310336Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9310588Z "line": 885 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9310818Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9311052Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9311338Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9311581Z "line": 9792 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9311819Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9312044Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9312273Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9312500Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9312732Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9312951Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9313208Z "id": "REQ-TERM-5", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9318109Z "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-21T09:42:01.9318490Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9318842Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9319147Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9319381Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9319615Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9319839Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9320077Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9320312Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9320574Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9320824Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9321054Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9321335Z "path": "docs/MANIFEST.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9321574Z "line": 234 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9321812Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9322036Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9322266Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9322495Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9322741Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9322979Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9323222Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9323559Z "path": "crates/spt-daemon/src/digest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9323811Z "line": 75 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9324049Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9324288Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9324612Z "path": "crates/spt-daemon/src/digest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9324860Z "line": 131 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9325085Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9325313Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9325638Z "path": "crates/spt-live/src/digest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9325889Z "line": 22 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9326131Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9326364Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9326689Z "path": "crates/spt-live/src/digest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9326926Z "line": 87 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9327155Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9327380Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9327708Z "path": "crates/spt-term/src/digest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9327952Z "line": 30 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9328171Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9328408Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9328749Z "path": "crates/spt-term/src/projection.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9329078Z "line": 103 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9329312Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9329541Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9329880Z "path": "crates/spt-term/src/projection.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9330117Z "line": 167 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9330351Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9330576Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9330914Z "path": "crates/spt-term/src/projection.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9331168Z "line": 434 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9331399Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9331633Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9331924Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9332168Z "line": 5650 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9332396Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9332639Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9332930Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9333187Z "line": 5957 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9333417Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9333639Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9333866Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9334096Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9334353Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9334595Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9334829Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9335258Z "path": "crates/spt-daemon/tests/two_origin_spanning.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9335497Z "line": 17 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9335730Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9335960Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9336193Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9336426Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9336687Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9336938Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9337147Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9337491Z "path": "crates/spt-daemon/src/digest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9337844Z "line": 375 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9338077Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9338401Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9338731Z "path": "crates/spt-live/src/digest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9339082Z "line": 162 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9339314Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9339543Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9339858Z "path": "crates/spt-live/src/digest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9340111Z "line": 179 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9340339Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9340573Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9340898Z "path": "crates/spt-live/src/digest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9341145Z "line": 201 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9341365Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9341593Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9341917Z "path": "crates/spt-live/src/digest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9342165Z "line": 212 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9342461Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9342704Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9343019Z "path": "crates/spt-live/src/digest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9343276Z "line": 223 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9343509Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9343747Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9344095Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9344342Z "line": 1525 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9344579Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9344807Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9345145Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9345389Z "line": 1568 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9345623Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9345862Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9346206Z "path": "crates/spt-term/src/projection.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9346458Z "line": 606 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9346686Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9346920Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9347265Z "path": "crates/spt-term/src/projection.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9347528Z "line": 634 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9347760Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9347984Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9348332Z "path": "crates/spt-term/src/projection.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9348581Z "line": 646 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9348820Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9349125Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9349469Z "path": "crates/spt-term/src/projection.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9349710Z "line": 669 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9349936Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9350166Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9350456Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9350705Z "line": 8503 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9350928Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9351152Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9351443Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9351673Z "line": 8561 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9351911Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9352130Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9352364Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9352591Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9352820Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9353049Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9353292Z "id": "REQ-TERM-6", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9356789Z "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-21T09:42:01.9357052Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9357285Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9357522Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9357746Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9357972Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9358206Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9358440Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9358812Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9359117Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9359441Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9359676Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9359934Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9360170Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9360406Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9360749Z "path": "crates/spt-daemon/src/digest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9360983Z "line": 132 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9361222Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9361449Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9361783Z "path": "crates/spt-daemon/src/digest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9362023Z "line": 187 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9362252Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9362486Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9362820Z "path": "crates/spt-store/src/sessions.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9363060Z "line": 17 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9363285Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9363528Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9363862Z "path": "crates/spt-store/src/sessions.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9364115Z "line": 104 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9364348Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9364587Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9364925Z "path": "crates/spt-term/src/projection.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9365159Z "line": 319 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9365396Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9365617Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9365951Z "path": "crates/spt-term/src/projection.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9366204Z "line": 396 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9366433Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9366668Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9366895Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9367134Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9367396Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9367636Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9367868Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9368292Z "path": "crates/spt-daemon/tests/two_origin_spanning.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9368547Z "line": 18 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9368780Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9369090Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9369329Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9369573Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9369835Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9370068Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9370302Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9370640Z "path": "crates/spt-store/src/sessions.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9370892Z "line": 135 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9371123Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9371347Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9371714Z "path": "crates/spt-store/src/sessions.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9371963Z "line": 150 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9372206Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9372440Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9372774Z "path": "crates/spt-store/src/sessions.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9373031Z "line": 166 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9373265Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9373503Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9373836Z "path": "crates/spt-store/src/sessions.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9374084Z "line": 257 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9374312Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9374545Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9374898Z "path": "crates/spt-term/src/projection.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9375137Z "line": 738 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9375376Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9375605Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9375961Z "path": "crates/spt-term/src/projection.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9376206Z "line": 759 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9376435Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9376670Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9376993Z "path": "crates/spt/src/api/reporting.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9377242Z "line": 726 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9377475Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9377709Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9377943Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9378285Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9378511Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9378737Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9379068Z "id": "REQ-TERM-7", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9382875Z "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-21T09:42:01.9383138Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9383395Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9383621Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9383867Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9384091Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9384339Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9384567Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9384829Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9385082Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9385312Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9385550Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9385812Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9386045Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9386275Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9386611Z "path": "crates/spt-daemon/src/digest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9386848Z "line": 133 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9387090Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9387324Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9387667Z "path": "crates/spt-daemon/src/digest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9387916Z "line": 326 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9388155Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9388383Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9388703Z "path": "crates/spt-live/src/inject.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9388936Z "line": 15 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9389260Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9389483Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9389797Z "path": "crates/spt-live/src/inject.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9390055Z "line": 32 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9390282Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9390525Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9390859Z "path": "crates/spt-store/src/history.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9391107Z "line": 49 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9391337Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9391570Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9391921Z "path": "crates/spt-term/src/projection.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9392162Z "line": 286 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9392401Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9392625Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9392973Z "path": "crates/spt-term/src/projection.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9393222Z "line": 320 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9393459Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9393703Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9393927Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9394161Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9394418Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9394679Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9394899Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9395327Z "path": "crates/spt-daemon/tests/two_origin_spanning.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9395576Z "line": 19 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9395796Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9396033Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9396262Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9396506Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9396759Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9397014Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9397241Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9397565Z "path": "crates/spt-daemon/src/digest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9397818Z "line": 455 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9398052Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9398290Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9398619Z "path": "crates/spt-daemon/src/digest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9398867Z "line": 568 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9399182Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9399411Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9399867Z "path": "crates/spt-live/src/inject.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9400113Z "line": 58 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9400442Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9400666Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9400990Z "path": "crates/spt-live/src/inject.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9401234Z "line": 77 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9401472Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9401691Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9402010Z "path": "crates/spt-live/src/inject.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9402255Z "line": 87 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9402472Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9402713Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9403051Z "path": "crates/spt-store/src/history.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9403286Z "line": 94 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9403519Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9403743Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9404096Z "path": "crates/spt-term/src/projection.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9404339Z "line": 691 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9404572Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9405259Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9405625Z "path": "crates/spt-term/src/projection.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9405935Z "line": 716 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9406160Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9406398Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9406622Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9406846Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9407076Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9407300Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9407551Z "id": "REQ-UPD-1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9407882Z "title": "Peer-propagated update over P2P", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9408144Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9408374Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9408612Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9408850Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9409140Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9409385Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9409609Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9409863Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9410109Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9410351Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9410594Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9410840Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9411078Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9411308Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9411660Z "path": "crates/spt-daemon/src/propagate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9411894Z "line": 28 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9412119Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9412347Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9412695Z "path": "crates/spt-daemon/src/propagate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9412937Z "line": 103 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9413156Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9413387Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9413737Z "path": "crates/spt-daemon/src/propagate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9413988Z "line": 342 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9414236Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9414460Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9414799Z "path": "crates/spt-daemon/src/relcache.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9415039Z "line": 22 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9415267Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9415495Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9415847Z "path": "crates/spt-daemon/src/relcache.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9416090Z "line": 207 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9416315Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9416548Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9416891Z "path": "crates/spt-daemon/src/relcache.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9417144Z "line": 283 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9417382Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9417602Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9417955Z "path": "crates/spt-daemon/src/relcache.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9418192Z "line": 340 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9418437Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9418662Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9419085Z "path": "crates/spt-net/src/net/update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9419348Z "line": 37 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9419573Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9419930Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9420160Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9420393Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9420732Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9420982Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9421214Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9421576Z "path": "crates/spt-daemon/tests/dispatch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9421830Z "line": 207 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9422064Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9422292Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9422635Z "path": "crates/spt-daemon/tests/twohost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9422883Z "line": 1082 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9423126Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9423347Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9423577Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9423809Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9424064Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9424306Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9424538Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9424878Z "path": "crates/spt-daemon/src/relcache.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9425130Z "line": 490 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9425369Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9425604Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9425947Z "path": "crates/spt-daemon/src/relcache.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9426190Z "line": 616 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9426426Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9426660Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9427022Z "path": "crates/spt-daemon/tests/propagate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9427266Z "line": 277 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9427500Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9427727Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9428062Z "path": "crates/spt-net/src/net/update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9428305Z "line": 124 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9428533Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9428762Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9429260Z "path": "crates/spt-net/src/net/update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9429541Z "line": 200 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9429790Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9430019Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9430252Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9430486Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9430720Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9430949Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9431191Z "id": "REQ-UPD-2", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9431609Z "title": "All binaries signature-verified before handoff", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9431869Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9432108Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9432347Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9432566Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9432795Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9433024Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9433282Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9433530Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9433767Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9434001Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9434257Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9434494Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9434727Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9435085Z "path": "crates/spt-daemon/src/propagate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9435333Z "line": 343 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9435562Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9435806Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9436154Z "path": "crates/spt-daemon/src/propagate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9436407Z "line": 476 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9436639Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9436878Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9437206Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9437459Z "line": 29 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9437688Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9437906Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9438249Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9438483Z "line": 271 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9438719Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9439014Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9439407Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9439663Z "line": 288 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9440016Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9440254Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9440594Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9440937Z "line": 408 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9441179Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9441408Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9441742Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9441989Z "line": 558 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9442246Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9442526Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9442869Z "path": "crates/spt-daemon/src/update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9443117Z "line": 155 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9443335Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9443574Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9443800Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9444022Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9444279Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9444528Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9444761Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9445001Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9445259Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9445502Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9445741Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9446080Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9446327Z "line": 750 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9446565Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9446790Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9447132Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9447377Z "line": 811 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9447604Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9447832Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9448171Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9448415Z "line": 825 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9448639Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9448877Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9449297Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9449555Z "line": 841 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9449796Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9450018Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9450356Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9450605Z "line": 932 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9450839Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9451062Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9451405Z "path": "crates/spt-daemon/src/update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9451634Z "line": 414 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9451868Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9452098Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9452437Z "path": "crates/spt-daemon/src/update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9452686Z "line": 427 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9452909Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9453143Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9453510Z "path": "crates/spt-daemon/tests/propagate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9453763Z "line": 410 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9454001Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9454230Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9454454Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9454689Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9454921Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9455145Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9455405Z "id": "REQ-UPD-3", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9455919Z "title": "No endpoint process terminates/suspends during self-update", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9456185Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9456420Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9456654Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9456892Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9457121Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9457359Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9457594Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9457851Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9458106Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9458336Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9458575Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9458832Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9459137Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9459370Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9459713Z "path": "crates/spt-daemon/src/applyhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9460081Z "line": 40 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9460304Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9460635Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9464694Z "path": "crates/spt-daemon/src/applyhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9464976Z "line": 87 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9465206Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9465434Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9465771Z "path": "crates/spt-daemon/src/brain.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9466017Z "line": 1042 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9466256Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9466479Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9466823Z "path": "crates/spt-daemon/src/broker.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9467070Z "line": 2017 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9467299Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9467538Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9467867Z "path": "crates/spt-daemon/src/update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9468111Z "line": 26 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9468339Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9468576Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9468915Z "path": "crates/spt-daemon/src/update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9469253Z "line": 114 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9469492Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9469722Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9470060Z "path": "crates/spt-daemon/src/update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9470298Z "line": 246 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9470521Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9470756Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9471035Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9471286Z "line": 2442 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9471510Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9471744Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9471973Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9472201Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9472464Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9472711Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9472951Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9473295Z "path": "crates/spt/tests/brain_survive.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9473552Z "line": 58 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9473788Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9474020Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9474249Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9474482Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9474734Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9474974Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9475213Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9475555Z "path": "crates/spt-daemon/src/applyhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9475804Z "line": 532 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9476037Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9476260Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9476620Z "path": "crates/spt-daemon/src/applyhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9476864Z "line": 585 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9477102Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9477334Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9477684Z "path": "crates/spt-daemon/src/applyhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9477936Z "line": 653 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9478170Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9478395Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9478742Z "path": "crates/spt-daemon/src/brainproc.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9479057Z "line": 1102 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9479293Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9479518Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9479851Z "path": "crates/spt-daemon/src/update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9480095Z "line": 271 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9480333Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9480558Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9480892Z "path": "crates/spt-daemon/src/update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9481139Z "line": 295 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9481363Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9481600Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9481928Z "path": "crates/spt-daemon/src/update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9482175Z "line": 316 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9482403Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9482633Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9482981Z "path": "crates/spt-daemon/src/update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9483395Z "line": 332 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9483629Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9483944Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9484179Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9484401Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9484622Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9484852Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9485105Z "id": "REQ-UPD-4", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9485643Z "title": "Update gated on user confirmation by default; opt-in full-auto", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9485891Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9486130Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9486359Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9486587Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9486825Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9487054Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9487309Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9487552Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9487776Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9488010Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9488273Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9488520Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9488730Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9489173Z "path": "crates/spt-daemon/src/applyhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9489421Z "line": 41 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9489655Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9489888Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9490245Z "path": "crates/spt-daemon/src/applyhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9490493Z "line": 88 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9490717Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9490946Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9491270Z "path": "crates/spt-daemon/src/consent.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9491514Z "line": 23 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9491742Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9491970Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9492306Z "path": "crates/spt-daemon/src/consent.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9492541Z "line": 56 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9492774Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9492987Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9493331Z "path": "crates/spt-daemon/src/consent.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9493570Z "line": 77 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9493808Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9494034Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9494381Z "path": "crates/spt-daemon/src/lifecycle.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9494615Z "line": 236 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9494842Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9495079Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9495398Z "path": "crates/spt-daemon/src/notif.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9495641Z "line": 108 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9495869Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9496099Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9496413Z "path": "crates/spt-store/src/info.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9496657Z "line": 270 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9496896Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9497133Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9497418Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9497665Z "line": 2441 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9497878Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9498112Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9498341Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9498585Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9498837Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9499162Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9499400Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9499633Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9499891Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9500135Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9500366Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9500714Z "path": "crates/spt-daemon/src/applyhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9500962Z "line": 581 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9501202Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9501431Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9501774Z "path": "crates/spt-daemon/src/applyhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9502017Z "line": 706 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9502250Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9502483Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9502814Z "path": "crates/spt-daemon/src/config.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9503176Z "line": 384 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9503406Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9503730Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9504059Z "path": "crates/spt-daemon/src/consent.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9504303Z "line": 102 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9504530Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9504759Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9505093Z "path": "crates/spt-daemon/src/consent.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9505332Z "line": 123 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9505569Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9505800Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9506134Z "path": "crates/spt-daemon/src/consent.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9506382Z "line": 142 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9506611Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9506845Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9507151Z "path": "crates/spt-store/src/info.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9507397Z "line": 582 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9507640Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9507871Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9508202Z "path": "crates/spt-store/src/perch.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9508457Z "line": 566 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9508686Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9508911Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9509291Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9509535Z "line": 8256 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9509770Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9509998Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9510222Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9510456Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9510681Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9510907Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9511155Z "id": "REQ-UPD-5", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9511570Z "title": "spt-core ripple-updates registered adapters", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9511832Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9512066Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9512301Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9512524Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9512772Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9512992Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9513248Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9513502Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9513722Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9513961Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9514205Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9514446Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9514666Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9515043Z "path": "crates/spt-daemon/src/adapter_update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9515286Z "line": 27 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9515512Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9515725Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9516086Z "path": "crates/spt-daemon/src/adapter_update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9516331Z "line": 87 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9516561Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9516795Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9517167Z "path": "crates/spt-daemon/src/adapter_update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9517406Z "line": 145 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9517648Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9517867Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9518210Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9518449Z "line": 492 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9518687Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9518907Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9519289Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9519551Z "line": 546 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9519776Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9519996Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9520215Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9520439Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9520701Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9520945Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9521169Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9521401Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9521655Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9521897Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9522120Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9522488Z "path": "crates/spt-daemon/src/adapter_update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9522841Z "line": 272 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9523166Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9523394Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9523760Z "path": "crates/spt-daemon/src/adapter_update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9524011Z "line": 286 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9524236Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9524464Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9524826Z "path": "crates/spt-daemon/src/adapter_update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9525070Z "line": 300 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9525302Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9525532Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9525908Z "path": "crates/spt-daemon/src/adapter_update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9526151Z "line": 314 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9526387Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9526617Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9526992Z "path": "crates/spt-daemon/src/adapter_update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9527244Z "line": 348 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9527478Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9527698Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9528050Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9528295Z "line": 1071 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9528513Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9528742Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9529056Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9529294Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9529535Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9529754Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9530012Z "id": "REQ-UPD-6", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9532624Z "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-21T09:42:01.9532892Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9533120Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9533363Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9533601Z "unit", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9533830Z "int" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9534060Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9534291Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9534527Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9534782Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9535024Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9535257Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9535596Z "path": "docs/DEBUG-CONVERGE-PLAN.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9535843Z "line": 3 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9536077Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9536317Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9536608Z "path": "docs/DEBUG-ROLLOUT.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9536841Z "line": 3 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9537073Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9537297Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9537719Z "path": "docs/adr/0016-platform-targeted-update-sets.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9537958Z "line": 3 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9538197Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9538424Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9538649Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9538884Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9539259Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9539518Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9539749Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9540100Z "path": "crates/spt-daemon/src/applyhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9540338Z "line": 76 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9540568Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9540792Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9541144Z "path": "crates/spt-daemon/src/applyhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9541388Z "line": 212 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9541621Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9541854Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9542212Z "path": "crates/spt-daemon/src/propagate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9542531Z "line": 69 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9542765Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9542994Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9543342Z "path": "crates/spt-daemon/src/propagate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9543699Z "line": 133 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9543933Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9544277Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9544625Z "path": "crates/spt-daemon/src/propagate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9544875Z "line": 243 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9545097Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9545337Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9545680Z "path": "crates/spt-daemon/src/propagate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9545933Z "line": 406 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9546171Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9546403Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9546756Z "path": "crates/spt-daemon/src/propagate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9547000Z "line": 534 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9547239Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9547469Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9547809Z "path": "crates/spt-daemon/src/propagate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9548055Z "line": 548 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9548279Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9548518Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9548861Z "path": "crates/spt-daemon/src/propagate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9549175Z "line": 603 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9549401Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9549624Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9549972Z "path": "crates/spt-daemon/src/propagate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9550209Z "line": 634 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9550447Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9550669Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9551037Z "path": "crates/spt-daemon/src/pump/update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9551275Z "line": 137 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9551503Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9551737Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9552086Z "path": "crates/spt-daemon/src/pump/update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9552330Z "line": 184 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9552564Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9552796Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9553152Z "path": "crates/spt-daemon/src/relcache.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9553386Z "line": 78 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9553630Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9553849Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9554188Z "path": "crates/spt-daemon/src/relcache.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9554426Z "line": 114 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9554664Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9554889Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9555218Z "path": "crates/spt-daemon/src/relcache.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9555469Z "line": 185 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9555695Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9555921Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9556258Z "path": "crates/spt-daemon/src/relcache.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9556512Z "line": 260 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9556751Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9556978Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9557316Z "path": "crates/spt-daemon/src/relcache.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9557560Z "line": 292 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9557804Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9558034Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9558379Z "path": "crates/spt-daemon/src/relcache.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9558629Z "line": 323 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9558863Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9559154Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9559488Z "path": "crates/spt-daemon/src/relcache.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9559722Z "line": 346 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9559942Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9560184Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9560528Z "path": "crates/spt-daemon/src/relcache.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9560760Z "line": 388 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9560993Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9561220Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9561559Z "path": "crates/spt-daemon/src/relcache.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9561806Z "line": 398 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9562026Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9562256Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9562712Z "path": "crates/spt-daemon/src/relcache.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9562974Z "line": 410 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9563303Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9563534Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9563866Z "path": "crates/spt-daemon/src/relcache.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9564109Z "line": 420 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9564342Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9564567Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9564915Z "path": "crates/spt-daemon/src/relcache.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9565153Z "line": 439 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9565388Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9565615Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9565953Z "path": "crates/spt-daemon/src/relcache.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9566194Z "line": 449 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9566414Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9566651Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9566981Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9567232Z "line": 94 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9567462Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9567682Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9568044Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9568279Z "line": 120 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9568506Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9568730Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9569122Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9569376Z "line": 135 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9569605Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9569838Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9570177Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9570419Z "line": 162 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9570644Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9570888Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9571232Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9571473Z "line": 174 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9571708Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9571943Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9572272Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9572524Z "line": 185 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9572758Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9573011Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9573335Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9573578Z "line": 451 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9573807Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9574032Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9574373Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9574616Z "line": 573 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9574849Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9575079Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9575422Z "path": "crates/spt-daemon/src/update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9575657Z "line": 171 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9575885Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9576128Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9576461Z "path": "crates/spt-net/src/net/update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9576721Z "line": 65 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9576950Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9577178Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9577517Z "path": "crates/spt-net/src/net/update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9577760Z "line": 71 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9577994Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9578224Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9578553Z "path": "crates/spt-net/src/net/update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9578791Z "line": 77 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9579111Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9579333Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9579640Z "path": "crates/xtask/src/main.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9579889Z "line": 778 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9580118Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9580350Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9580641Z "path": "crates/xtask/src/main.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9580880Z "line": 795 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9581105Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9581453Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9581749Z "path": "crates/xtask/src/main.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9581980Z "line": 838 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9582311Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9582536Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9582841Z "path": "crates/xtask/src/main.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9583080Z "line": 981 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9583323Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9583546Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9583837Z "path": "crates/xtask/src/main.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9584081Z "line": 1131 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9584301Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9584535Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9584752Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9584986Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9585239Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9585486Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9585720Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9586096Z "path": "crates/spt-daemon/tests/propagate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9586364Z "line": 569 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9586589Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9586823Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9587159Z "path": "docs/DEBUG-CONVERGE-PLAN.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9587399Z "line": 135 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9587633Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9587858Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9588092Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9588320Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9588587Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9588835Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9589132Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9589479Z "path": "crates/spt-daemon/src/applyhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9589724Z "line": 626 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9589954Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9590181Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9590520Z "path": "crates/spt-daemon/src/applyhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9590768Z "line": 675 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9590998Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9591234Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9591583Z "path": "crates/spt-daemon/src/propagate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9591826Z "line": 696 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9592060Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9592290Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9592636Z "path": "crates/spt-daemon/src/relcache.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9592876Z "line": 513 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9593115Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9593344Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9593678Z "path": "crates/spt-daemon/src/relcache.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9593931Z "line": 638 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9594159Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9594379Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9594717Z "path": "crates/spt-daemon/src/relcache.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9594965Z "line": 675 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9595195Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9595431Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9595770Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9596013Z "line": 947 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9596253Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9596472Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9596825Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9597064Z "line": 969 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9597300Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9597524Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9597856Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9598104Z "line": 986 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9598332Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9598565Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9598899Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9599209Z "line": 1001 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9599448Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9599678Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9600007Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9600250Z "line": 1027 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9600477Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9600818Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9601151Z "path": "crates/spt-daemon/src/update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9601499Z "line": 457 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9601723Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9601948Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9602320Z "path": "crates/spt-daemon/tests/propagate.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9602568Z "line": 338 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9602798Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9603029Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9603323Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9603567Z "line": 10549 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9603810Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9604032Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9604333Z "path": "crates/xtask/src/main.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9604586Z "line": 1260 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9604811Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9605044Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9605354Z "path": "docs/DEBUG-CONVERGE-PLAN.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9605612Z "line": 130 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9605840Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9606078Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9606320Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9606554Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9606788Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9607017Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9607255Z "id": "REQ-UPD-7", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9613290Z "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-21T09:42:01.9613585Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9613826Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9614069Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9614307Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9614550Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9614784Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9615047Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9615299Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9615523Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9615752Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9616001Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9616249Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9616471Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9616767Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9617015Z "line": 2626 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9617244Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9617467Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9617687Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9617916Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9618184Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9618435Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9618673Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9618901Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9619234Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9619491Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9619719Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9620014Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9620259Z "line": 10525 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9620488Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9620726Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9620959Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9621188Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9621418Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9621640Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9621890Z "id": "REQ-UPD-8", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9629063Z "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-21T09:42:01.9629602Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9629842Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9630075Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9630313Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9630546Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9630785Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9631038Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9631281Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9631515Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9631739Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9632007Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9632243Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9632488Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9632846Z "path": "crates/spt-daemon/src/applyhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9633085Z "line": 77 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9633319Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9633543Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9633887Z "path": "crates/spt-daemon/src/relcache.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9634119Z "line": 49 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9634357Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9634588Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9634928Z "path": "crates/spt-daemon/src/relcache.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9635165Z "line": 152 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9635398Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9635633Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9635971Z "path": "crates/spt-daemon/src/relcache.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9636223Z "line": 215 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9636463Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9636691Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9637025Z "path": "crates/spt-daemon/src/relcache.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9637272Z "line": 230 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9637501Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9637734Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9638083Z "path": "crates/spt-daemon/src/relcache.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9638335Z "line": 247 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9638563Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9638797Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9639245Z "path": "crates/spt-daemon/src/relcache.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9639508Z "line": 269 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9639741Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9639965Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9640301Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9640544Z "line": 66 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9640773Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9641002Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9641341Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9641594Z "line": 154 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9641817Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9642056Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9642365Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9642651Z "line": 2430 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9642874Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9643101Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9643391Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9643631Z "line": 2493 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9643869Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9644093Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9644389Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9644622Z "line": 2503 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9644856Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9645086Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9645360Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9645601Z "line": 2510 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9645836Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9646179Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9646469Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9646822Z "line": 2627 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9647056Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9647270Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9647576Z "path": "crates/xtask/src/main.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9647809Z "line": 480 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9648039Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9648266Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9648561Z "path": "crates/xtask/src/main.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9648804Z "line": 494 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9649128Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9653002Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9653268Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9653509Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9653772Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9654019Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9654257Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9654482Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9654749Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9655007Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9655244Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9655598Z "path": "crates/spt-daemon/src/applyhost.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9655849Z "line": 476 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9656086Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9656324Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9656672Z "path": "crates/spt-daemon/src/relcache.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9656916Z "line": 580 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9657148Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9657377Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9657678Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9657927Z "line": 10527 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9658155Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9658384Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9658673Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9658912Z "line": 10549 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9659222Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9659456Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9659688Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9659922Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9660157Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9660380Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9660633Z "id": "REQ-UPD-9", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9668037Z "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-21T09:42:01.9668328Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9668562Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9668792Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9669074Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9669304Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9669539Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9669773Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9670026Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9670267Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9670502Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9670769Z "path": "CONTEXT.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9671022Z "line": 93 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9671260Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9671488Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9671767Z "path": "docs/MANIFEST.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9672011Z "line": 285 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9672253Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9672481Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9672721Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9673120Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9673374Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9673618Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9673951Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9674322Z "path": "crates/spt-daemon/src/adapter_update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9674555Z "line": 128 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9674791Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9675010Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9675358Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9675607Z "line": 533 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9675846Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9676084Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9676423Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9676675Z "line": 459 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9676893Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9677131Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9677473Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9677726Z "line": 505 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9677973Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9678207Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9678545Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9678793Z "line": 928 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9679075Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9679300Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9679639Z "path": "crates/spt-runtime/src/registry.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9679884Z "line": 302 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9680108Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9680352Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9680633Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9680876Z "line": 5675 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9681105Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9681339Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9681635Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9681874Z "line": 5720 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9682110Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9682337Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9682619Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9682876Z "line": 5857 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9683123Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9683352Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9683634Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9683877Z "line": 5878 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9684107Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9684334Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9684621Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9684868Z "line": 5901 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9685106Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9685336Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9685628Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9685871Z "line": 5928 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9686105Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9686339Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9686572Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9686805Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9687055Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9687303Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9687534Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9687770Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9688014Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9688261Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9688500Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9688862Z "path": "crates/spt-daemon/src/adapter_update.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9689181Z "line": 259 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9689415Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9689644Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9689978Z "path": "crates/spt-daemon/src/release.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9690223Z "line": 657 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9690453Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9690678Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9691031Z "path": "crates/spt-runtime/src/manifest.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9691274Z "line": 1107 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9691499Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9691731Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9692018Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9692371Z "line": 7565 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9692590Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9692818Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9693141Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9693373Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9693602Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9693817Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9694075Z "id": "REQ-WHOAMI-1", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9698468Z "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-21T09:42:01.9698731Z "requiredStages": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9699050Z "doc", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9699299Z "impl", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9699528Z "unit" traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9699756Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9699994Z "stages": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9700233Z "doc": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9700478Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9700721Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9700952Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9701219Z "path": "CONTEXT.md", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9701458Z "line": 707 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9701696Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9701924Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9702149Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9702384Z "impl": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9702641Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9702888Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9703111Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9703410Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9703653Z "line": 3190 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9703876Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9704110Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9704406Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9704659Z "line": 3218 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9704897Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9705126Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9705359Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9705589Z "int": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9705846Z "complete": false, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9706092Z "evidence": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9706324Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9706563Z "unit": { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9706820Z "complete": true, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9707057Z "evidence": [ traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9707288Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9707573Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9707817Z "line": 7847 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9708055Z }, traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9708273Z { traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9708569Z "path": "crates/spt/src/cli.rs", traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9708821Z "line": 7900 traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9709120Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9709377Z ] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9709600Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9709830Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9710060Z } traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9710283Z ], traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9710522Z "findings": [] traceability Coverage gate (hard — fails PR on uncovered activated req) 2026-06-21T09:42:01.9710751Z } traceability Quality audit (advisory) 2026-06-21T09:42:01.9760971Z ##[group]Run ./traceable-reqs lint || true traceability Quality audit (advisory) 2026-06-21T09:42:01.9761305Z ./traceable-reqs lint || true traceability Quality audit (advisory) 2026-06-21T09:42:01.9774346Z shell: /usr/bin/bash -e {0} traceability Quality audit (advisory) 2026-06-21T09:42:01.9774588Z ##[endgroup] traceability Quality audit (advisory) 2026-06-21T09:42:02.0027255Z Requirement quality findings (243); 276 requirements queued for agent review: traceability Quality audit (advisory) 2026-06-21T09:42:02.0029914Z [must] requirement_quality REQ-API-1 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0032949Z [must] requirement_quality REQ-API-4 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0035129Z [must] requirement_quality REQ-API-4 criterion=length — title is 67 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0037352Z [must] requirement_quality REQ-CLI-1 criterion=length — title is 47 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0039215Z [must] requirement_quality REQ-CLI-2 criterion=length — title is 37 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0040856Z [must] requirement_quality REQ-CLI-3 criterion=length — title is 37 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0042326Z [must] requirement_quality REQ-CLI-4 criterion=length — title is 89 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0044282Z [must] requirement_quality REQ-CLI-HELP-MARKDOWN criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0046251Z [must] requirement_quality REQ-CLI-HELP-MARKDOWN criterion=length — title is 156 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0048261Z [must] requirement_quality REQ-CLI-OUTPUT-MARKDOWN criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0050334Z [must] requirement_quality REQ-CLI-OUTPUT-MARKDOWN criterion=length — title is 199 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0051956Z [must] requirement_quality REQ-CONSENT-1 criterion=length — title is 41 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0053473Z [must] requirement_quality REQ-CONSENT-2 criterion=length — title is 37 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0055000Z [must] requirement_quality REQ-CONSENT-3 criterion=length — title is 82 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0056758Z [must] requirement_quality REQ-CONV-1 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0058467Z [must] requirement_quality REQ-CONV-1 criterion=length — title is 73 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0059959Z [must] requirement_quality REQ-CONV-2 criterion=length — title is 47 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0061710Z [must] requirement_quality REQ-DAEMON-5 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0063456Z [must] requirement_quality REQ-DAEMON-5 criterion=length — title is 64 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0065295Z [must] requirement_quality REQ-DAEMON-6 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0067163Z [must] requirement_quality REQ-DAEMON-6 criterion=length — title is 84 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0069175Z [must] requirement_quality REQ-DAEMON-7 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0071096Z [must] requirement_quality REQ-DAEMON-7 criterion=length — title is 62 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0072666Z [must] requirement_quality REQ-DAEMON-8 criterion=length — title is 44 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0074541Z [must] requirement_quality REQ-DAEMON-9 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0076425Z [must] requirement_quality REQ-DAEMON-9 criterion=length — title is 114 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0078355Z [must] requirement_quality REQ-ELEVATE-1 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0080333Z [must] requirement_quality REQ-ELEVATE-1 criterion=length — title is 121 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0082428Z [must] requirement_quality REQ-ENDPOINT-LIST-MERGE-LOCAL criterion=length — title is 95 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0084562Z [must] requirement_quality REQ-ENDPOINT-PURGE criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0086551Z [must] requirement_quality REQ-ENDPOINT-PURGE criterion=length — title is 220 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0088335Z [must] requirement_quality REQ-ENDPOINT-STOP-OFFLINE criterion=length — title is 58 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0090343Z [must] requirement_quality REQ-EP-6 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0092117Z [must] requirement_quality REQ-EP-6 criterion=length — title is 58 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0093729Z [must] requirement_quality REQ-EP-7 criterion=length — title is 68 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0095666Z [must] requirement_quality REQ-HAZARD-ATTACH-WEDGE criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0097779Z [must] requirement_quality REQ-HAZARD-ATTACH-WEDGE criterion=length — title is 244 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0099979Z [must] requirement_quality REQ-HAZARD-BIND-CWD-UNSET criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0102111Z [must] requirement_quality REQ-HAZARD-BIND-CWD-UNSET criterion=length — title is 130 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0104299Z [must] requirement_quality REQ-HAZARD-BRAIN-RESPAWN-PATH criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0106517Z [must] requirement_quality REQ-HAZARD-BRAIN-RESPAWN-PATH criterion=length — title is 119 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0109002Z [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-21T09:42:02.0111545Z [must] requirement_quality REQ-HAZARD-BRAIN-RESTART-LIFECYCLE-REHYDRATE criterion=length — title is 125 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0113990Z [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-21T09:42:02.0116309Z [must] requirement_quality REQ-HAZARD-BRAIN-RESTART-PSYCHE-DUP criterion=length — title is 199 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0118636Z [must] requirement_quality REQ-HAZARD-BROKER-PROCESS-ISOLATION criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0121948Z [must] requirement_quality REQ-HAZARD-BROKER-PROCESS-ISOLATION criterion=length — title is 114 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0124932Z [must] requirement_quality REQ-HAZARD-BROKER-QUIC-DEADLINE criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0127756Z [must] requirement_quality REQ-HAZARD-BROKER-QUIC-DEADLINE criterion=length — title is 162 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0130614Z [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-21T09:42:02.0132879Z [must] requirement_quality REQ-HAZARD-BROKER-SEED-WIRE-SKEW criterion=length — title is 193 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0134881Z [must] requirement_quality REQ-HAZARD-CONFLICT-BOTH-PRESERVED criterion=length — title is 29 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0137185Z [must] requirement_quality REQ-HAZARD-CONTROLLER-RETAKE-FLOOR criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0139829Z [must] requirement_quality REQ-HAZARD-CONTROLLER-RETAKE-FLOOR criterion=length — title is 184 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0142149Z [must] requirement_quality REQ-HAZARD-CONTROLLER-WRITER-REORDER criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0144708Z [must] requirement_quality REQ-HAZARD-CONTROLLER-WRITER-REORDER criterion=length — title is 643 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0146737Z [must] requirement_quality REQ-HAZARD-DAEMON-SCHED-NONBLOCKING criterion=length — title is 32 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0149181Z [must] requirement_quality REQ-HAZARD-DAEMON-STOP-BARRIER criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0151381Z [must] requirement_quality REQ-HAZARD-DAEMON-STOP-BARRIER criterion=length — title is 80 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0153543Z [must] requirement_quality REQ-HAZARD-DAEMON-STOP-REAP criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0155677Z [must] requirement_quality REQ-HAZARD-DAEMON-STOP-REAP criterion=length — title is 90 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0157821Z [must] requirement_quality REQ-HAZARD-DEFERRED-MANIFEST criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0160070Z [must] requirement_quality REQ-HAZARD-DEFERRED-MANIFEST criterion=length — title is 112 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0161998Z [must] requirement_quality REQ-HAZARD-DETACHED-PIPE-INHERIT criterion=length — title is 52 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0164312Z [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-21T09:42:02.0166677Z [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-21T09:42:02.0169038Z [must] requirement_quality REQ-HAZARD-DRIVEN-BY-SELFHEAL criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0171209Z [must] requirement_quality REQ-HAZARD-DRIVEN-BY-SELFHEAL criterion=length — title is 77 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0173453Z [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-21T09:42:02.0175763Z [must] requirement_quality REQ-HAZARD-EFFECT-JOURNAL-PTY-WEDGE criterion=length — title is 440 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0178037Z [must] requirement_quality REQ-HAZARD-ELEVATED-DAEMON-SPAWN criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0180356Z [must] requirement_quality REQ-HAZARD-ELEVATED-DAEMON-SPAWN criterion=length — title is 58 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0182651Z [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-21T09:42:02.0184999Z [must] requirement_quality REQ-HAZARD-ENDPOINT-RUN-ATTACH-OUTPUT criterion=length — title is 228 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0187167Z [must] requirement_quality REQ-HAZARD-ENV-SUBST criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0189177Z [must] requirement_quality REQ-HAZARD-ENV-SUBST criterion=length — title is 168 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0191270Z [must] requirement_quality REQ-HAZARD-ENVELOPE-CR-LINESAFE criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0193473Z [must] requirement_quality REQ-HAZARD-ENVELOPE-CR-LINESAFE criterion=length — title is 73 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0195701Z [must] requirement_quality REQ-HAZARD-ENVELOPE-PARSER-SAFE criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0197847Z [must] requirement_quality REQ-HAZARD-EPOCH-RESET criterion=length — title is 60 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0200118Z [must] requirement_quality REQ-HAZARD-GEN-START-NOW criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0202316Z [must] requirement_quality REQ-HAZARD-HOSTED-LIVENESS-RECONCILE criterion=length — title is 175 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0204711Z [must] requirement_quality REQ-HAZARD-INJECT-CONTROL-COEXIST criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0206934Z [must] requirement_quality REQ-HAZARD-INJECT-CONTROL-COEXIST criterion=length — title is 340 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0209290Z [must] requirement_quality REQ-HAZARD-INPUT-ACK-BACKPRESSURE criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0211517Z [must] requirement_quality REQ-HAZARD-INPUT-ACK-BACKPRESSURE criterion=length — title is 343 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0213421Z [must] requirement_quality REQ-HAZARD-INSTANT-UNDERFLOW criterion=length — title is 30 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0215386Z [must] requirement_quality REQ-HAZARD-LIVEHOST-BOOT-LIVENESS-GATE criterion=length — title is 122 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0217652Z [must] requirement_quality REQ-HAZARD-LIVEHOST-BOOT-RACE criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0219869Z [must] requirement_quality REQ-HAZARD-LIVEHOST-BOOT-RACE criterion=length — title is 158 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0222049Z [must] requirement_quality REQ-HAZARD-LIVEHOST-NONRESIDENT criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0224238Z [must] requirement_quality REQ-HAZARD-LIVEHOST-NONRESIDENT criterion=length — title is 171 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0226092Z [must] requirement_quality REQ-HAZARD-PAIR-RATE-LIMIT criterion=length — title is 37 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0227926Z [must] requirement_quality REQ-HAZARD-PAIR-SEED-ROTATION criterion=length — title is 33 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0230170Z [must] requirement_quality REQ-HAZARD-PAIR-TRANSCRIPT-BIND criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0232662Z [must] requirement_quality REQ-HAZARD-PSYCHE-OUTBOUND-PROXY criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0234852Z [must] requirement_quality REQ-HAZARD-PSYCHE-OUTBOUND-PROXY criterion=length — title is 27 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0237074Z [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-21T09:42:02.0239407Z [must] requirement_quality REQ-HAZARD-PTY-INPUT-WRITER-WEDGE criterion=length — title is 287 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0241637Z [must] requirement_quality REQ-HAZARD-PUMP-IPC-DEADLINE criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0243837Z [must] requirement_quality REQ-HAZARD-PUMP-IPC-DEADLINE criterion=length — title is 38 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0245973Z [must] requirement_quality REQ-HAZARD-RC-ATTACH-FAILFAST criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0248112Z [must] requirement_quality REQ-HAZARD-RC-ATTACH-FAILFAST criterion=length — title is 163 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0250376Z [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-21T09:42:02.0252571Z [must] requirement_quality REQ-HAZARD-RC-ATTACH-ONLINE-RACE criterion=length — title is 184 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0254596Z [must] requirement_quality REQ-HAZARD-RC-EOF criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0256596Z [must] requirement_quality REQ-HAZARD-RC-EOF criterion=length — title is 208 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0258653Z [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-21T09:42:02.0261045Z [must] requirement_quality REQ-HAZARD-RC-INPUT-KEY-ENCODING criterion=length — title is 222 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0263230Z [must] requirement_quality REQ-HAZARD-REGISTRY-GHOST-ROWS criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0265376Z [must] requirement_quality REQ-HAZARD-REGISTRY-GHOST-ROWS criterion=length — title is 66 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0267261Z [must] requirement_quality REQ-HAZARD-ROLLBACK-STATE-COMPAT criterion=length — title is 72 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0269419Z [must] requirement_quality REQ-HAZARD-ROSTER-GHOST criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0271462Z [must] requirement_quality REQ-HAZARD-ROSTER-GHOST criterion=length — title is 116 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0273464Z [must] requirement_quality REQ-HAZARD-SELF-ELEVATE criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0275475Z [must] requirement_quality REQ-HAZARD-SELF-ELEVATE criterion=length — title is 101 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0277240Z [must] requirement_quality REQ-HAZARD-SUDO-SECURE-PATH criterion=length — title is 43 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0279426Z [must] requirement_quality REQ-HAZARD-TEMPLATE-ARGV-FILL criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0281557Z [must] requirement_quality REQ-HAZARD-TEMPLATE-ARGV-FILL criterion=length — title is 166 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0283696Z [must] requirement_quality REQ-HAZARD-UNHOST-PSYCHE-REAP criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0285843Z [must] requirement_quality REQ-HAZARD-UNHOST-PSYCHE-REAP criterion=length — title is 161 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0287996Z [must] requirement_quality REQ-HAZARD-VIEWER-CLOSE-DETACH criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0290234Z [must] requirement_quality REQ-HAZARD-VIEWER-CLOSE-DETACH criterion=length — title is 437 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0292368Z [must] requirement_quality REQ-HAZARD-VIEWER-ISOLATION criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0294447Z [must] requirement_quality REQ-HAZARD-VIEWER-ISOLATION criterion=length — title is 118 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0296871Z [must] requirement_quality REQ-HAZARD-VIEWER-STARVE-UNDER-CONTROLLER-BACKPRESSURE criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0299686Z [must] requirement_quality REQ-HAZARD-VIEWER-STARVE-UNDER-CONTROLLER-BACKPRESSURE criterion=length — title is 235 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0301776Z [must] requirement_quality REQ-HAZARD-WAN-ORIGIN-AUTH criterion=length — title is 37 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0303934Z [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-21T09:42:02.0306157Z [must] requirement_quality REQ-HAZARD-WIN-PTY-PROGRAM-RESOLVE criterion=length — title is 96 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0308021Z [must] requirement_quality REQ-HAZARD-WMI-DAEMON-WINDOW criterion=length — title is 101 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0309737Z [must] requirement_quality REQ-HOST-RUN-1 criterion=length — title is 88 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0311243Z [must] requirement_quality REQ-HOST-RUN-2 criterion=length — title is 97 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0312860Z [must] requirement_quality REQ-INST-15 criterion=length — title is 32 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0314637Z [must] requirement_quality REQ-INSTALL-10 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0316556Z [must] requirement_quality REQ-INSTALL-10 criterion=length — title is 58 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0329047Z [must] requirement_quality REQ-INSTALL-11 criterion=length — title is 78 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0330765Z [must] requirement_quality REQ-INSTALL-12 criterion=length — title is 116 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0332292Z [must] requirement_quality REQ-INSTALL-2 criterion=length — title is 2 word(s); want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0334109Z [must] requirement_quality REQ-INSTALL-6 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0335910Z [must] requirement_quality REQ-INSTALL-6 criterion=length — title is 56 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0337733Z [must] requirement_quality REQ-INSTALL-7 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0339649Z [must] requirement_quality REQ-INSTALL-7 criterion=length — title is 50 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0341191Z [must] requirement_quality REQ-INSTALL-8 criterion=length — title is 55 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0343067Z [must] requirement_quality REQ-INSTALL-9 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0344855Z [must] requirement_quality REQ-INSTALL-9 criterion=length — title is 62 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0346604Z [must] requirement_quality REQ-KICK-1 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0348341Z [must] requirement_quality REQ-KICK-1 criterion=length — title is 133 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0350210Z [must] requirement_quality REQ-MANIFEST-1 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0352024Z [must] requirement_quality REQ-MANIFEST-3 criterion=length — title is 26 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0353536Z [must] requirement_quality REQ-MANIFEST-4 criterion=length — title is 31 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0355057Z [must] requirement_quality REQ-MANIFEST-5 criterion=length — title is 132 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0356583Z [must] requirement_quality REQ-MANIFEST-6 criterion=length — title is 84 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0358107Z [must] requirement_quality REQ-MANIFEST-7 criterion=length — title is 120 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0359693Z [must] requirement_quality REQ-MANIFEST-8 criterion=length — title is 77 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0361167Z [must] requirement_quality REQ-MESH-1 criterion=length — title is 86 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0362894Z [must] requirement_quality REQ-MESH-2 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0364607Z [must] requirement_quality REQ-MESH-2 criterion=length — title is 120 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0366337Z [must] requirement_quality REQ-MESH-3 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0368058Z [must] requirement_quality REQ-MESH-3 criterion=length — title is 86 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0369858Z [must] requirement_quality REQ-MESH-4 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0371581Z [must] requirement_quality REQ-MESH-4 criterion=length — title is 99 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0373311Z [must] requirement_quality REQ-MESH-5 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0375006Z [must] requirement_quality REQ-MESH-5 criterion=length — title is 72 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0376906Z [must] requirement_quality REQ-MESH-6 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0378609Z [must] requirement_quality REQ-MESH-6 criterion=length — title is 56 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0380570Z [must] requirement_quality REQ-MIGRATE-1 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0382326Z [must] requirement_quality REQ-MSG-4 criterion=length — title is 31 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0383728Z [must] requirement_quality REQ-MSG-5 criterion=length — title is 38 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0385131Z [must] requirement_quality REQ-MSG-6 criterion=length — title is 65 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0386910Z [must] requirement_quality REQ-MSG-ENVELOPE criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0388765Z [must] requirement_quality REQ-MSG-ENVELOPE criterion=length — title is 153 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0390844Z [must] requirement_quality REQ-MSG-IDLE-TRANSLATION-BINARY criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0393001Z [must] requirement_quality REQ-MSG-IDLE-TRANSLATION-BINARY criterion=length — title is 221 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0394951Z [must] requirement_quality REQ-PAIR-8 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0396649Z [must] requirement_quality REQ-PAIR-8 criterion=length — title is 67 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0398375Z [must] requirement_quality REQ-PICKER-1 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0400219Z [must] requirement_quality REQ-PICKER-1 criterion=length — title is 156 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0401700Z [must] requirement_quality REQ-PICKER-2 criterion=length — title is 77 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0403176Z [must] requirement_quality REQ-PICKER-3 criterion=length — title is 120 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0404957Z [must] requirement_quality REQ-PICKER-4 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0406701Z [must] requirement_quality REQ-PICKER-4 criterion=length — title is 84 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0408463Z [must] requirement_quality REQ-PICKER-5 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0410290Z [must] requirement_quality REQ-PICKER-5 criterion=length — title is 147 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0412279Z [must] requirement_quality REQ-PICKER-ADAPTER-DESCRIPTION criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0414432Z [must] requirement_quality REQ-PICKER-ADAPTER-DESCRIPTION criterion=length — title is 64 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0416227Z [must] requirement_quality REQ-PICKER-HISTORY-FRESH criterion=length — title is 51 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0418047Z [must] requirement_quality REQ-PICKER-HISTORY-FRESH criterion=tbd-todo — title contains placeholder marker 'TBD' traceability Quality audit (advisory) 2026-06-21T09:42:02.0419939Z [must] requirement_quality REQ-PICKER-ONLINE-ACTION criterion=length — title is 74 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0421791Z [must] requirement_quality REQ-PICKER-ONLINE-ACTION criterion=tbd-todo — title contains placeholder marker 'TBD' traceability Quality audit (advisory) 2026-06-21T09:42:02.0423831Z [must] requirement_quality REQ-PICKER-UX-V013 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0425687Z [must] requirement_quality REQ-PICKER-UX-V013 criterion=length — title is 86 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0427467Z [must] requirement_quality REQ-PRES-1 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0429240Z [must] requirement_quality REQ-PRES-1 criterion=length — title is 48 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0430761Z [must] requirement_quality REQ-RC-1 criterion=length — title is 94 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0432961Z [must] requirement_quality REQ-RC-KEY-VT-TRANSLATE criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0435131Z [must] requirement_quality REQ-RC-KEY-VT-TRANSLATE criterion=length — title is 249 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0437088Z [must] requirement_quality REQ-RC-MOUSE-FORWARD criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0439072Z [must] requirement_quality REQ-RC-MOUSE-FORWARD criterion=length — title is 218 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0441016Z [must] requirement_quality REQ-RC-WIN-PASTE criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0442887Z [must] requirement_quality REQ-RC-WIN-PASTE criterion=length — title is 226 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0444733Z [must] requirement_quality REQ-RCVIEW-1 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0446484Z [must] requirement_quality REQ-RCVIEW-1 criterion=length — title is 197 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0448364Z [must] requirement_quality REQ-READY-AGENT-RESUME criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0450390Z [must] requirement_quality REQ-READY-AGENT-RESUME criterion=length — title is 165 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0452277Z [must] requirement_quality REQ-RUN-PICKER criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0454072Z [must] requirement_quality REQ-RUN-PICKER criterion=length — title is 203 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0455896Z [must] requirement_quality REQ-RUN-SHORTCUT criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0457734Z [must] requirement_quality REQ-RUN-SHORTCUT criterion=length — title is 226 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0459367Z [must] requirement_quality REQ-SEAM-SPAWN criterion=length — title is 2 word(s); want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0461245Z [must] requirement_quality REQ-SEND-SPT-HOSTED criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0463123Z [must] requirement_quality REQ-SEND-SPT-HOSTED criterion=length — title is 169 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0465122Z [must] requirement_quality REQ-SESSION-RESUME-TEMPLATE criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0467185Z [must] requirement_quality REQ-SESSION-RESUME-TEMPLATE criterion=length — title is 287 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0468792Z [must] requirement_quality REQ-SHELL-1 criterion=length — title is 36 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0470294Z [must] requirement_quality REQ-SHELL-2 criterion=length — title is 49 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0471748Z [must] requirement_quality REQ-SHELL-3 criterion=length — title is 80 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0473497Z [must] requirement_quality REQ-SHELL-4 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0475221Z [must] requirement_quality REQ-SHELL-4 criterion=length — title is 84 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0476655Z [must] requirement_quality REQ-SHELL-5 criterion=length — title is 49 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0478388Z [must] requirement_quality REQ-START-5 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0480182Z [must] requirement_quality REQ-START-5 criterion=length — title is 129 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0481623Z [must] requirement_quality REQ-STORE-1 criterion=length — title is 34 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0483233Z [must] requirement_quality REQ-SUBNET-5 criterion=length — title is 52 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0484988Z [must] requirement_quality REQ-SUBNET-6 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0486720Z [must] requirement_quality REQ-SUBNET-6 criterion=length — title is 38 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0488581Z [must] requirement_quality REQ-SUBNET-7 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0490413Z [must] requirement_quality REQ-SUBNET-7 criterion=length — title is 75 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0491873Z [must] requirement_quality REQ-SUBNET-8 criterion=length — title is 53 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0493602Z [must] requirement_quality REQ-TERM-5 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0495294Z [must] requirement_quality REQ-TERM-5 criterion=length — title is 71 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0497017Z [must] requirement_quality REQ-TERM-6 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0498712Z [must] requirement_quality REQ-TERM-6 criterion=length — title is 53 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0500505Z [must] requirement_quality REQ-TERM-7 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0502209Z [must] requirement_quality REQ-TERM-7 criterion=length — title is 55 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0503918Z [must] requirement_quality REQ-UPD-6 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0505589Z [must] requirement_quality REQ-UPD-6 criterion=length — title is 32 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0507287Z [must] requirement_quality REQ-UPD-7 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0509009Z [must] requirement_quality REQ-UPD-7 criterion=length — title is 88 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0510717Z [must] requirement_quality REQ-UPD-8 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities traceability Quality audit (advisory) 2026-06-21T09:42:02.0512406Z [must] requirement_quality REQ-UPD-8 criterion=length — title is 115 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0513832Z [must] requirement_quality REQ-UPD-9 criterion=length — title is 110 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0515261Z [must] requirement_quality REQ-WHOAMI-1 criterion=length — title is 76 words; want 3..=25 traceability Quality audit (advisory) 2026-06-21T09:42:02.0516111Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0516352Z # Requirement quality review traceability Quality audit (advisory) 2026-06-21T09:42:02.0516741Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0517284Z You are reviewing 276 requirement(s) from `traceable-reqs.toml` against a quality traceability Quality audit (advisory) 2026-06-21T09:42:02.0518553Z rubric. Deterministic checks (length, contains-and, tbd-todo, duplicate-titles, traceability Quality audit (advisory) 2026-06-21T09:42:02.0519913Z trailing-etc) have already run and surfaced as `requirement_quality` findings on traceability Quality audit (advisory) 2026-06-21T09:42:02.0521029Z this command's output. Your task is the rubric items below. traceability Quality audit (advisory) 2026-06-21T09:42:02.0521611Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0521824Z ## Rubric traceability Quality audit (advisory) 2026-06-21T09:42:02.0522075Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0522685Z - **singular** — describes one capability; no smuggled "and"/"or" across distinct actions. traceability Quality audit (advisory) 2026-06-21T09:42:02.0524087Z - **verifiable** — states an observable behavior a test or reviewer could confirm. traceability Quality audit (advisory) 2026-06-21T09:42:02.0525306Z - **atomic** — cannot be split into two requirements without losing meaning. traceability Quality audit (advisory) 2026-06-21T09:42:02.0526308Z - **active-voice** — clear subject and active verb. traceability Quality audit (advisory) 2026-06-21T09:42:02.0526832Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0527397Z If a criterion is borderline or doesn't apply, abstain — only emit findings for traceability Quality audit (advisory) 2026-06-21T09:42:02.0528308Z clear concerns. traceability Quality audit (advisory) 2026-06-21T09:42:02.0528603Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0528807Z ## Requirements traceability Quality audit (advisory) 2026-06-21T09:42:02.0529170Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0529379Z ### REQ-ARCH-1 traceability Quality audit (advisory) 2026-06-21T09:42:02.0529908Z - Title: Many small acyclically-layered crates traceability Quality audit (advisory) 2026-06-21T09:42:02.0530749Z - Required stages: impl traceability Quality audit (advisory) 2026-06-21T09:42:02.0531093Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0531303Z ### REQ-ARCH-2 traceability Quality audit (advisory) 2026-06-21T09:42:02.0531946Z - Title: Public SDK surface is spt-proto, spt-runtime, spt-msg traceability Quality audit (advisory) 2026-06-21T09:42:02.0532754Z - Required stages: impl traceability Quality audit (advisory) 2026-06-21T09:42:02.0533203Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0533403Z ### REQ-ARCH-3 traceability Quality audit (advisory) 2026-06-21T09:42:02.0534156Z - Title: Wire-protocol version independent of crate semver, N-1 compat window traceability Quality audit (advisory) 2026-06-21T09:42:02.0535105Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.0535490Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0535686Z ### REQ-ARCH-4 traceability Quality audit (advisory) 2026-06-21T09:42:02.0536363Z - Title: Copy-verbatim the commodity layer from the sister project traceability Quality audit (advisory) 2026-06-21T09:42:02.0537188Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.0537563Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0537775Z ### REQ-DAEMON-1 traceability Quality audit (advisory) 2026-06-21T09:42:02.0538433Z - Title: One per-machine spt-daemon owning all per-machine state traceability Quality audit (advisory) 2026-06-21T09:42:02.0539386Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.0539860Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0540069Z ### REQ-DAEMON-2 traceability Quality audit (advisory) 2026-06-21T09:42:02.0540647Z - Title: Broker/brain split for seamless self-update traceability Quality audit (advisory) 2026-06-21T09:42:02.0541401Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.0541815Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0542031Z ### REQ-DAEMON-3 traceability Quality audit (advisory) 2026-06-21T09:42:02.0542651Z - Title: Any api invocation auto-starts the daemon if absent traceability Quality audit (advisory) 2026-06-21T09:42:02.0543533Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.0543953Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0544157Z ### REQ-DAEMON-4 traceability Quality audit (advisory) 2026-06-21T09:42:02.0544682Z - Title: Honor every KNOWN-HAZARDS invariant traceability Quality audit (advisory) 2026-06-21T09:42:02.0545364Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.0545783Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0545994Z ### REQ-STORE-1 traceability Quality audit (advisory) 2026-06-21T09:42:02.0548818Z - 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-21T09:42:02.0551776Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.0552170Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0552380Z ### REQ-MANIFEST-1 traceability Quality audit (advisory) 2026-06-21T09:42:02.0553105Z - Title: Per-adapter manifest with adapter_name and min_spt_core_version traceability Quality audit (advisory) 2026-06-21T09:42:02.0554009Z - Required stages: doc, impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.0554422Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0554642Z ### REQ-MANIFEST-2 traceability Quality audit (advisory) 2026-06-21T09:42:02.0556174Z - Title: Adapter profiles — sparse leaf-replace overlays (shipped + local), composite : addressing, shadow-refusal, tighten-only consent floors traceability Quality audit (advisory) 2026-06-21T09:42:02.0557803Z - Required stages: doc, impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.0558226Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0558432Z ### REQ-MANIFEST-3 traceability Quality audit (advisory) 2026-06-21T09:42:02.0560388Z - 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-21T09:42:02.0562368Z - Required stages: doc, impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.0562783Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0563008Z ### REQ-MANIFEST-4 traceability Quality audit (advisory) 2026-06-21T09:42:02.0565069Z - 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-21T09:42:02.0567222Z - Required stages: doc, impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.0567643Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0567856Z ### REQ-MANIFEST-5 traceability Quality audit (advisory) 2026-06-21T09:42:02.0576077Z - 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-21T09:42:02.0584296Z - Required stages: doc, impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.0584723Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0584935Z ### REQ-MANIFEST-6 traceability Quality audit (advisory) 2026-06-21T09:42:02.0590947Z - 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-21T09:42:02.0596691Z - Required stages: doc, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.0597069Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0597278Z ### REQ-MANIFEST-7 traceability Quality audit (advisory) 2026-06-21T09:42:02.0605629Z - 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-21T09:42:02.0613494Z - Required stages: doc, impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.0613923Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0614138Z ### REQ-MANIFEST-8 traceability Quality audit (advisory) 2026-06-21T09:42:02.0620143Z - 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-21T09:42:02.0625819Z - Required stages: doc, impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.0626269Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0626478Z ### REQ-SEAM-SPAWN traceability Quality audit (advisory) 2026-06-21T09:42:02.0626982Z - Title: spawn-session seam traceability Quality audit (advisory) 2026-06-21T09:42:02.0627545Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.0627925Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0628154Z ### REQ-SEAM-POSTSPAWN traceability Quality audit (advisory) 2026-06-21T09:42:02.0628759Z - Title: post-spawn / api bind seam with boot nonce traceability Quality audit (advisory) 2026-06-21T09:42:02.0629564Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.0629946Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0630169Z ### REQ-SEAM-PSYCHE traceability Quality audit (advisory) 2026-06-21T09:42:02.0630765Z - Title: spawn-psyche seam (fresh + resume templates) traceability Quality audit (advisory) 2026-06-21T09:42:02.0631508Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.0631939Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0632263Z ### REQ-SEAM-HISTORY traceability Quality audit (advisory) 2026-06-21T09:42:02.0633003Z - Title: History subsystem (fetcher / locate-normalize / native store) traceability Quality audit (advisory) 2026-06-21T09:42:02.0633900Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.0634304Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0634530Z ### REQ-SEAM-ACTIVITY traceability Quality audit (advisory) 2026-06-21T09:42:02.0635366Z - Title: Activity/idle reported via api sentinels, not PTY quiescence traceability Quality audit (advisory) 2026-06-21T09:42:02.0636242Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.0636642Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0636852Z ### REQ-SEAM-INJECT traceability Quality audit (advisory) 2026-06-21T09:42:02.0637520Z - Title: inject-input methods configurable per activity-state traceability Quality audit (advisory) 2026-06-21T09:42:02.0638336Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.0638709Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0638927Z ### REQ-SEAM-RESUME traceability Quality audit (advisory) 2026-06-21T09:42:02.0639752Z - Title: resume-session seam (fresh-with-preload / continue-existing) traceability Quality audit (advisory) 2026-06-21T09:42:02.0640665Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.0641045Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0641263Z ### REQ-SEAM-CAPABILITY traceability Quality audit (advisory) 2026-06-21T09:42:02.0641927Z - Title: Hostable endpoint-types capability declaration traceability Quality audit (advisory) 2026-06-21T09:42:02.0642679Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.0643131Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0643343Z ### REQ-SEAM-UPDATE traceability Quality audit (advisory) 2026-06-21T09:42:02.0644006Z - Title: Adapter-update avenue (file-pull / delegated command) traceability Quality audit (advisory) 2026-06-21T09:42:02.0644822Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.0645203Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0645400Z ### REQ-API-1 traceability Quality audit (advisory) 2026-06-21T09:42:02.0646056Z - Title: api prefix and adapter_name on every machinery invocation traceability Quality audit (advisory) 2026-06-21T09:42:02.0646906Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.0647322Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0647527Z ### REQ-API-2 traceability Quality audit (advisory) 2026-06-21T09:42:02.0648291Z - Title: The api subcommand surface (bind/listen/poll/state/worker/boundary/...) traceability Quality audit (advisory) 2026-06-21T09:42:02.0649340Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.0649750Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0649951Z ### REQ-API-3 traceability Quality audit (advisory) 2026-06-21T09:42:02.0650509Z - Title: commune/signoff are file-drops, not commands traceability Quality audit (advisory) 2026-06-21T09:42:02.0651262Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.0651694Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0651885Z ### REQ-API-4 traceability Quality audit (advisory) 2026-06-21T09:42:02.0656140Z - 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-21T09:42:02.0660415Z - Required stages: doc, impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.0660826Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0661030Z ### REQ-START-1 traceability Quality audit (advisory) 2026-06-21T09:42:02.0661756Z - Title: Adapters never resolve SPT_HOME; binary on PATH; api bridging only traceability Quality audit (advisory) 2026-06-21T09:42:02.0662655Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.0663047Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0663246Z ### REQ-START-2 traceability Quality audit (advisory) 2026-06-21T09:42:02.0663833Z - Title: Harness-hosted startup: api seed then listen traceability Quality audit (advisory) 2026-06-21T09:42:02.0664583Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.0664989Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0665197Z ### REQ-START-3 traceability Quality audit (advisory) 2026-06-21T09:42:02.0665866Z - Title: spt-hosted startup: spawn-session then api bind (no file) traceability Quality audit (advisory) 2026-06-21T09:42:02.0666719Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.0667128Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0667316Z ### REQ-START-4 traceability Quality audit (advisory) 2026-06-21T09:42:02.0667884Z - Title: Adapter-injected env aliases (SPT/OWL/LIVE) traceability Quality audit (advisory) 2026-06-21T09:42:02.0668627Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.0669072Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0669266Z ### REQ-START-5 traceability Quality audit (advisory) 2026-06-21T09:42:02.0677123Z - 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-21T09:42:02.0685083Z - Required stages: doc, impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.0685523Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0685727Z ### REQ-EP-1 traceability Quality audit (advisory) 2026-06-21T09:42:02.0686256Z - Title: Day-one endpoint types; open type system traceability Quality audit (advisory) 2026-06-21T09:42:02.0686981Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.0687363Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0687557Z ### REQ-EP-2 traceability Quality audit (advisory) 2026-06-21T09:42:02.0688186Z - Title: Agent endpoints vs Shells distinction in the type model traceability Quality audit (advisory) 2026-06-21T09:42:02.0689109Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.0689495Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0689710Z ### REQ-EP-3 traceability Quality audit (advisory) 2026-06-21T09:42:02.0690406Z - Title: Messaging payloads carry typed operation commands + file blobs traceability Quality audit (advisory) 2026-06-21T09:42:02.0691286Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.0691670Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0691872Z ### REQ-EP-4 traceability Quality audit (advisory) 2026-06-21T09:42:02.0692454Z - Title: PresenceChannel broker endpoint (seam day-one) traceability Quality audit (advisory) 2026-06-21T09:42:02.0693210Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.0693606Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0693802Z ### REQ-EP-5 traceability Quality audit (advisory) 2026-06-21T09:42:02.0695970Z - 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-21T09:42:02.0698295Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.0698704Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0698904Z ### REQ-EP-6 traceability Quality audit (advisory) 2026-06-21T09:42:02.0703099Z - 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-21T09:42:02.0707229Z - Required stages: doc, impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.0707639Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0707863Z ### REQ-EP-7 traceability Quality audit (advisory) 2026-06-21T09:42:02.0712635Z - 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-21T09:42:02.0717255Z - Required stages: doc, impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.0717659Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0717875Z ### REQ-INST-1 traceability Quality audit (advisory) 2026-06-21T09:42:02.0718500Z - Title: endpoint ID vs instance split (adapter-agnostic ID) traceability Quality audit (advisory) 2026-06-21T09:42:02.0719359Z - Required stages: traceability Quality audit (advisory) 2026-06-21T09:42:02.0719660Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0719862Z ### REQ-INST-2 traceability Quality audit (advisory) 2026-06-21T09:42:02.0720376Z - Title: Per-node files, synced Psyche mind traceability Quality audit (advisory) 2026-06-21T09:42:02.0721038Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.0721414Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0721601Z ### REQ-INST-3 traceability Quality audit (advisory) 2026-06-21T09:42:02.0722188Z - Title: Dormant (warm) / suspended (cold) resting states traceability Quality audit (advisory) 2026-06-21T09:42:02.0722971Z - Required stages: doc, impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.0723379Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0723581Z ### REQ-INST-4 traceability Quality audit (advisory) 2026-06-21T09:42:02.0724257Z - Title: active to dormant/suspended fires a transition echo commune traceability Quality audit (advisory) 2026-06-21T09:42:02.0725262Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.0725653Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0725855Z ### REQ-INST-5 traceability Quality audit (advisory) 2026-06-21T09:42:02.0726536Z - Title: Two-tier context sync (live to all, project to same-project) traceability Quality audit (advisory) 2026-06-21T09:42:02.0727507Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.0727924Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0728129Z ### REQ-INST-6 traceability Quality audit (advisory) 2026-06-21T09:42:02.0728821Z - Title: Deferred messages not delivered to dormant/suspended instances traceability Quality audit (advisory) 2026-06-21T09:42:02.0729789Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.0730205Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0730413Z ### REQ-INST-7 traceability Quality audit (advisory) 2026-06-21T09:42:02.0730978Z - Title: Subnet registry + bare-id resolution policy traceability Quality audit (advisory) 2026-06-21T09:42:02.0731726Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.0732138Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0732341Z ### REQ-INST-8 traceability Quality audit (advisory) 2026-06-21T09:42:02.0732951Z - Title: Remote-control mode distinct from local operation traceability Quality audit (advisory) 2026-06-21T09:42:02.0733736Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.0734160Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0734361Z ### REQ-INST-9 traceability Quality audit (advisory) 2026-06-21T09:42:02.0735062Z - Title: Multi-subnet membership (same-user N subnets; cross-user seam) traceability Quality audit (advisory) 2026-06-21T09:42:02.0735956Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.0736334Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0736537Z ### REQ-INST-10 traceability Quality audit (advisory) 2026-06-21T09:42:02.0737321Z - Title: Qualified addressing [subnet:]id[@node] + ambiguity forces qualification traceability Quality audit (advisory) 2026-06-21T09:42:02.0738296Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.0738671Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0738881Z ### REQ-INST-11 traceability Quality audit (advisory) 2026-06-21T09:42:02.0739744Z - Title: spt rename rippled to all instances (collision-checked, 6.5-reconciled) traceability Quality audit (advisory) 2026-06-21T09:42:02.0740746Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.0741125Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0741328Z ### REQ-INST-12 traceability Quality audit (advisory) 2026-06-21T09:42:02.0742349Z - Title: Endpoint visibility per-(endpoint,subnet): excluded semantics, OR-of-defaults + override, gates sync traceability Quality audit (advisory) 2026-06-21T09:42:02.0743625Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.0744014Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0744218Z ### REQ-INST-13 traceability Quality audit (advisory) 2026-06-21T09:42:02.0744906Z - Title: Subnet-exclusive sync + per-endpoint subnet-membership list traceability Quality audit (advisory) 2026-06-21T09:42:02.0745783Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.0746170Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0746378Z ### REQ-INST-14 traceability Quality audit (advisory) 2026-06-21T09:42:02.0747670Z - Title: Resource advertisement (subnet resource registry): free-text blurb, both-authored, registry projection, visibility/whitelist-gated traceability Quality audit (advisory) 2026-06-21T09:42:02.0749231Z - Required stages: doc, impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.0749640Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0749856Z ### REQ-INST-15 traceability Quality audit (advisory) 2026-06-21T09:42:02.0752164Z - 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-21T09:42:02.0754628Z - Required stages: doc, impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.0755041Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0755247Z ### REQ-REACH-1 traceability Quality audit (advisory) 2026-06-21T09:42:02.0755839Z - Title: Off-node remote-drive detection + file transfer traceability Quality audit (advisory) 2026-06-21T09:42:02.0756600Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.0757009Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0757215Z ### REQ-REACH-2 traceability Quality audit (advisory) 2026-06-21T09:42:02.0757826Z - Title: Remote command execution (deferred, consent-gated) traceability Quality audit (advisory) 2026-06-21T09:42:02.0758583Z - Required stages: traceability Quality audit (advisory) 2026-06-21T09:42:02.0758888Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0759155Z ### REQ-MSG-1 traceability Quality audit (advisory) 2026-06-21T09:42:02.0760640Z - 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-21T09:42:02.0762311Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.0762724Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0762921Z ### REQ-MSG-2 traceability Quality audit (advisory) 2026-06-21T09:42:02.0763875Z - Title: spt binary CLI surface: send/ring/ready(+--once)/list/stop/whoami, stable arg shapes + exit codes traceability Quality audit (advisory) 2026-06-21T09:42:02.0765001Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.0765377Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0765707Z ### REQ-MSG-3 traceability Quality audit (advisory) 2026-06-21T09:42:02.0766985Z - 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-21T09:42:02.0768447Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.0769034Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0769235Z ### REQ-MSG-4 traceability Quality audit (advisory) 2026-06-21T09:42:02.0771596Z - 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-21T09:42:02.0773986Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.0774397Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0774611Z ### REQ-MSG-ENVELOPE traceability Quality audit (advisory) 2026-06-21T09:42:02.0784870Z - 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-21T09:42:02.0795140Z - Required stages: doc, impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.0795583Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0795784Z ### REQ-MSG-5 traceability Quality audit (advisory) 2026-06-21T09:42:02.0798136Z - 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-21T09:42:02.0800723Z - Required stages: doc, impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.0801138Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0801349Z ### REQ-MSG-6 traceability Quality audit (advisory) 2026-06-21T09:42:02.0805876Z - 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-21T09:42:02.0810364Z - Required stages: doc, impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.0810783Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0810998Z ### REQ-NODE-IDENTITY traceability Quality audit (advisory) 2026-06-21T09:42:02.0811857Z - Title: Ed25519 identity primitive: keypair, detached sign/verify, stable pubkey<->hex traceability Quality audit (advisory) 2026-06-21T09:42:02.0812868Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.0818307Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0818556Z ### REQ-NET-1 traceability Quality audit (advisory) 2026-06-21T09:42:02.0819399Z - Title: WAN messaging first-class, behind default-on net feature flag traceability Quality audit (advisory) 2026-06-21T09:42:02.0820356Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.0820776Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0820985Z ### REQ-NET-2 traceability Quality audit (advisory) 2026-06-21T09:42:02.0821662Z - Title: n0 relay default + self-host knob + plain-language disclosure traceability Quality audit (advisory) 2026-06-21T09:42:02.0822530Z - Required stages: impl traceability Quality audit (advisory) 2026-06-21T09:42:02.0822861Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0823062Z ### REQ-NET-3 traceability Quality audit (advisory) 2026-06-21T09:42:02.0823711Z - Title: Cross-node Psyche sync over P2P replaces gh-repo-sync traceability Quality audit (advisory) 2026-06-21T09:42:02.0824707Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.0825154Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0825365Z ### REQ-PAIR-1 traceability Quality audit (advisory) 2026-06-21T09:42:02.0825847Z - Title: TOTP-seeded SPAKE2 pairing traceability Quality audit (advisory) 2026-06-21T09:42:02.0826506Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.0827025Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0827240Z ### REQ-PAIR-2 traceability Quality audit (advisory) 2026-06-21T09:42:02.0827808Z - Title: Local trust store with TOFU + warn-on-change traceability Quality audit (advisory) 2026-06-21T09:42:02.0828524Z - Required stages: traceability Quality audit (advisory) 2026-06-21T09:42:02.0828834Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0829107Z ### REQ-PAIR-3 traceability Quality audit (advisory) 2026-06-21T09:42:02.0829716Z - Title: Fetch current pairing code from any paired node traceability Quality audit (advisory) 2026-06-21T09:42:02.0830464Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.0830850Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0831055Z ### REQ-PAIR-4 traceability Quality audit (advisory) 2026-06-21T09:42:02.0831555Z - Title: Subnet naming on first pairing traceability Quality audit (advisory) 2026-06-21T09:42:02.0832199Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.0832576Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0832780Z ### REQ-PAIR-5 traceability Quality audit (advisory) 2026-06-21T09:42:02.0833841Z - Title: Multi-subnet pairing: subnet-name discovery input, create-new-names-up-front, rendezvous-token hashing traceability Quality audit (advisory) 2026-06-21T09:42:02.0835066Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.0835487Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0835687Z ### REQ-PAIR-6 traceability Quality audit (advisory) 2026-06-21T09:42:02.0836631Z - Title: Elevation-gated per-subnet code fetch (UAC/root or elevated agent; else authenticator app) traceability Quality audit (advisory) 2026-06-21T09:42:02.0837748Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.0838121Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0838325Z ### REQ-PAIR-7 traceability Quality audit (advisory) 2026-06-21T09:42:02.0839041Z - Title: Subnet icon (inline image metadata, GUI-only consumer) traceability Quality audit (advisory) 2026-06-21T09:42:02.0839837Z - Required stages: traceability Quality audit (advisory) 2026-06-21T09:42:02.0840180Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0840386Z ### REQ-SUBNET-1 traceability Quality audit (advisory) 2026-06-21T09:42:02.0841504Z - 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-21T09:42:02.0842782Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.0843241Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0843451Z ### REQ-SUBNET-2 traceability Quality audit (advisory) 2026-06-21T09:42:02.0844291Z - Title: Guided join e2e: spt subnet join CLI initiator + always-on daemon pairing responder traceability Quality audit (advisory) 2026-06-21T09:42:02.0845330Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.0845733Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0845932Z ### REQ-SUBNET-3 traceability Quality audit (advisory) 2026-06-21T09:42:02.0846905Z - Title: Node labels: hostname-default, gossiped, addressable in @node qualifiers (refuse-on-ambiguity) traceability Quality audit (advisory) 2026-06-21T09:42:02.0848037Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.0848426Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0848633Z ### REQ-SUBNET-4 traceability Quality audit (advisory) 2026-06-21T09:42:02.0849735Z - Title: Subnet membership mutations elevation-gated (create = seed reveal; join = trust-boundary enrollment) traceability Quality audit (advisory) 2026-06-21T09:42:02.0850941Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.0851327Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0851524Z ### REQ-DOCS-6 traceability Quality audit (advisory) 2026-06-21T09:42:02.0852632Z - Title: spt how-to : in-binary task-oriented agent instructions (anti-drift; quickstart prompts point agents at it) traceability Quality audit (advisory) 2026-06-21T09:42:02.0852881Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.0852910Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0853106Z ### REQ-SEC-1 traceability Quality audit (advisory) 2026-06-21T09:42:02.0854187Z - 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-21T09:42:02.0854424Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.0854466Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0854665Z ### REQ-NOTIF-1 traceability Quality audit (advisory) 2026-06-21T09:42:02.0855649Z - Title: Notification primitive: per-subnet replicated spool, seen/dismissed, resurface-at-boundary, subsumes update+consent prompts traceability Quality audit (advisory) 2026-06-21T09:42:02.0855886Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.0855924Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0856120Z ### REQ-NOTIF-2 traceability Quality audit (advisory) 2026-06-21T09:42:02.0856811Z - Title: spt notify (agent-issued subnet notif) + notif_command manifest seam (harness + shell adapters) traceability Quality audit (advisory) 2026-06-21T09:42:02.0857059Z - Required stages: doc, impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.0857092Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0857287Z ### REQ-UPD-1 traceability Quality audit (advisory) 2026-06-21T09:42:02.0857547Z - Title: Peer-propagated update over P2P traceability Quality audit (advisory) 2026-06-21T09:42:02.0857915Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.0857953Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0858152Z ### REQ-UPD-2 traceability Quality audit (advisory) 2026-06-21T09:42:02.0858482Z - Title: All binaries signature-verified before handoff traceability Quality audit (advisory) 2026-06-21T09:42:02.0858710Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.0858869Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0859135Z ### REQ-UPD-3 traceability Quality audit (advisory) 2026-06-21T09:42:02.0859565Z - Title: No endpoint process terminates/suspends during self-update traceability Quality audit (advisory) 2026-06-21T09:42:02.0859801Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.0859825Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0860013Z ### REQ-UPD-4 traceability Quality audit (advisory) 2026-06-21T09:42:02.0860457Z - Title: Update gated on user confirmation by default; opt-in full-auto traceability Quality audit (advisory) 2026-06-21T09:42:02.0860685Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.0860724Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0860910Z ### REQ-UPD-5 traceability Quality audit (advisory) 2026-06-21T09:42:02.0861224Z - Title: spt-core ripple-updates registered adapters traceability Quality audit (advisory) 2026-06-21T09:42:02.0861450Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.0861483Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0861687Z ### REQ-UPD-6 traceability Quality audit (advisory) 2026-06-21T09:42:02.0864113Z - 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-21T09:42:02.0864371Z - Required stages: doc, impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.0864408Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0864605Z ### REQ-UPD-7 traceability Quality audit (advisory) 2026-06-21T09:42:02.0870078Z - 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-21T09:42:02.0870328Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.0870366Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0870573Z ### REQ-UPD-8 traceability Quality audit (advisory) 2026-06-21T09:42:02.0877364Z - 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-21T09:42:02.0877607Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.0877645Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0877850Z ### REQ-UPD-9 traceability Quality audit (advisory) 2026-06-21T09:42:02.0884885Z - 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-21T09:42:02.0885258Z - Required stages: doc, impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.0885300Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0885596Z ### REQ-TERM-1 traceability Quality audit (advisory) 2026-06-21T09:42:02.0886029Z - Title: Process-supervisor terminal wrapper hosting broker PTYs traceability Quality audit (advisory) 2026-06-21T09:42:02.0886260Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.0886293Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0886495Z ### REQ-TERM-2 traceability Quality audit (advisory) 2026-06-21T09:42:02.0886942Z - Title: session-surface abstraction; send-keys + send-line injection traceability Quality audit (advisory) 2026-06-21T09:42:02.0887180Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.0887218Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0887414Z ### REQ-TERM-3 traceability Quality audit (advisory) 2026-06-21T09:42:02.0887734Z - Title: Byte-stream remote terminal streaming for v1 traceability Quality audit (advisory) 2026-06-21T09:42:02.0887978Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.0888016Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0888210Z ### REQ-TERM-4 traceability Quality audit (advisory) 2026-06-21T09:42:02.0889628Z - 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-21T09:42:02.0889876Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.0889915Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0890123Z ### REQ-TERM-5 traceability Quality audit (advisory) 2026-06-21T09:42:02.0894702Z - 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-21T09:42:02.0894964Z - Required stages: doc, impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.0895003Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0895197Z ### REQ-TERM-6 traceability Quality audit (advisory) 2026-06-21T09:42:02.0898446Z - 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-21T09:42:02.0898699Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.0898737Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0898933Z ### REQ-TERM-7 traceability Quality audit (advisory) 2026-06-21T09:42:02.0902455Z - 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-21T09:42:02.0902713Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.0902741Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0902945Z ### REQ-FRONT-1 traceability Quality audit (advisory) 2026-06-21T09:42:02.0903371Z - Title: Day-one launcher/manager frontend (list/launch/attach/init) traceability Quality audit (advisory) 2026-06-21T09:42:02.0903584Z - Required stages: traceability Quality audit (advisory) 2026-06-21T09:42:02.0903618Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0903832Z ### REQ-HOST-RUN-1 traceability Quality audit (advisory) 2026-06-21T09:42:02.0910050Z - 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-21T09:42:02.0910420Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.0910553Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0910754Z ### REQ-RC-1 traceability Quality audit (advisory) 2026-06-21T09:42:02.0916213Z - 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-21T09:42:02.0916491Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.0916523Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0916733Z ### REQ-HOST-RUN-2 traceability Quality audit (advisory) 2026-06-21T09:42:02.0921967Z - 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-21T09:42:02.0922220Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.0922258Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0922467Z ### REQ-RUN-PICKER traceability Quality audit (advisory) 2026-06-21T09:42:02.0935318Z - 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-21T09:42:02.0935618Z - Required stages: doc, impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.0935648Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0935861Z ### REQ-RUN-SHORTCUT traceability Quality audit (advisory) 2026-06-21T09:42:02.0948767Z - 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-21T09:42:02.0949360Z - Required stages: doc, impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.0949399Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0949602Z ### REQ-ELEVATE-1 traceability Quality audit (advisory) 2026-06-21T09:42:02.0958092Z - 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-21T09:42:02.0958387Z - Required stages: doc, impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.0958421Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0958635Z ### REQ-WHOAMI-1 traceability Quality audit (advisory) 2026-06-21T09:42:02.0962764Z - 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-21T09:42:02.0963024Z - Required stages: doc, impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.0963067Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0963268Z ### REQ-RCVIEW-1 traceability Quality audit (advisory) 2026-06-21T09:42:02.0975463Z - 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-21T09:42:02.0975977Z - Required stages: doc, impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.0976015Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0976218Z ### REQ-KICK-1 traceability Quality audit (advisory) 2026-06-21T09:42:02.0983033Z - 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-21T09:42:02.0983295Z - Required stages: doc, impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.0983334Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0983547Z ### REQ-PICKER-1 traceability Quality audit (advisory) 2026-06-21T09:42:02.0993312Z - 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-21T09:42:02.0993594Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.0993636Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0993836Z ### REQ-PICKER-2 traceability Quality audit (advisory) 2026-06-21T09:42:02.0998674Z - 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-21T09:42:02.0999117Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.0999136Z traceability Quality audit (advisory) 2026-06-21T09:42:02.0999347Z ### REQ-PICKER-3 traceability Quality audit (advisory) 2026-06-21T09:42:02.1005928Z - 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-21T09:42:02.1006294Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1006329Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1006538Z ### REQ-PICKER-4 traceability Quality audit (advisory) 2026-06-21T09:42:02.1011679Z - 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-21T09:42:02.1011945Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1011980Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1012190Z ### REQ-PICKER-5 traceability Quality audit (advisory) 2026-06-21T09:42:02.1020524Z - 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-21T09:42:02.1020806Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1020839Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1021061Z ### REQ-SEND-SPT-HOSTED traceability Quality audit (advisory) 2026-06-21T09:42:02.1030994Z - 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-21T09:42:02.1031488Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.1031521Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1031727Z ### REQ-HAZARD-RC-EOF traceability Quality audit (advisory) 2026-06-21T09:42:02.1042387Z - 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-21T09:42:02.1042678Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1042715Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1042973Z ### REQ-HAZARD-DEFERRED-MANIFEST traceability Quality audit (advisory) 2026-06-21T09:42:02.1049407Z - 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-21T09:42:02.1049666Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1049703Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1049927Z ### REQ-HAZARD-ENV-SUBST traceability Quality audit (advisory) 2026-06-21T09:42:02.1059178Z - 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-21T09:42:02.1059601Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.1059638Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1059869Z ### REQ-HAZARD-ROSTER-GHOST traceability Quality audit (advisory) 2026-06-21T09:42:02.1066522Z - 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-21T09:42:02.1066880Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1066918Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1067186Z ### REQ-HAZARD-HOSTED-LIVENESS-RECONCILE traceability Quality audit (advisory) 2026-06-21T09:42:02.1078085Z - 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-21T09:42:02.1078375Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.1078413Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1078666Z ### REQ-HAZARD-RC-ATTACH-FAILFAST traceability Quality audit (advisory) 2026-06-21T09:42:02.1087246Z - 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-21T09:42:02.1087522Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.1087561Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1087800Z ### REQ-ENDPOINT-STOP-OFFLINE traceability Quality audit (advisory) 2026-06-21T09:42:02.1091272Z - 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-21T09:42:02.1091739Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1091774Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1092024Z ### REQ-HAZARD-DAEMON-STOP-BARRIER traceability Quality audit (advisory) 2026-06-21T09:42:02.1096676Z - 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-21T09:42:02.1096938Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1096972Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1097222Z ### REQ-HAZARD-DAEMON-STOP-REAP traceability Quality audit (advisory) 2026-06-21T09:42:02.1102105Z - 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-21T09:42:02.1102353Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1102392Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1102675Z ### REQ-HAZARD-LIVEHOST-BOOT-LIVENESS-GATE traceability Quality audit (advisory) 2026-06-21T09:42:02.1109106Z - 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-21T09:42:02.1109363Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.1109416Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1109741Z ### REQ-HAZARD-BRAIN-RESTART-LIFECYCLE-REHYDRATE traceability Quality audit (advisory) 2026-06-21T09:42:02.1116712Z - 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-21T09:42:02.1117066Z - Required stages: traceability Quality audit (advisory) 2026-06-21T09:42:02.1117100Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1117371Z ### REQ-HAZARD-BRAIN-RESTART-PSYCHE-DUP traceability Quality audit (advisory) 2026-06-21T09:42:02.1127549Z - 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-21T09:42:02.1127941Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.1127970Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1128221Z ### REQ-HAZARD-UNHOST-PSYCHE-REAP traceability Quality audit (advisory) 2026-06-21T09:42:02.1136837Z - 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-21T09:42:02.1137127Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.1137161Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1137381Z ### REQ-ENDPOINT-PURGE traceability Quality audit (advisory) 2026-06-21T09:42:02.1150023Z - 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-21T09:42:02.1150550Z - Required stages: doc, impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.1150588Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1150822Z ### REQ-READY-AGENT-RESUME traceability Quality audit (advisory) 2026-06-21T09:42:02.1160150Z - 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-21T09:42:02.1160450Z - Required stages: doc, impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.1160488Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1160744Z ### REQ-PICKER-ADAPTER-DESCRIPTION traceability Quality audit (advisory) 2026-06-21T09:42:02.1164430Z - 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-21T09:42:02.1164668Z - Required stages: traceability Quality audit (advisory) 2026-06-21T09:42:02.1164701Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1164945Z ### REQ-HAZARD-VIEWER-ISOLATION traceability Quality audit (advisory) 2026-06-21T09:42:02.1170806Z - 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-21T09:42:02.1171172Z - Required stages: unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.1171205Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1171398Z ### REQ-INSTALL-1 traceability Quality audit (advisory) 2026-06-21T09:42:02.1171881Z - Title: Two install paths; signed one-line script; OS-service registration traceability Quality audit (advisory) 2026-06-21T09:42:02.1172114Z - Required stages: doc, impl, int traceability Quality audit (advisory) 2026-06-21T09:42:02.1172143Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1172347Z ### REQ-INSTALL-2 traceability Quality audit (advisory) 2026-06-21T09:42:02.1172671Z - Title: Marketplace-repackaging-friendly install traceability Quality audit (advisory) 2026-06-21T09:42:02.1172890Z - Required stages: doc traceability Quality audit (advisory) 2026-06-21T09:42:02.1172925Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1173130Z ### REQ-INSTALL-3 traceability Quality audit (advisory) 2026-06-21T09:42:02.1173450Z - Title: Idempotent + interactive-optional first run traceability Quality audit (advisory) 2026-06-21T09:42:02.1173683Z - Required stages: impl, int traceability Quality audit (advisory) 2026-06-21T09:42:02.1173812Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1174025Z ### REQ-INSTALL-4 traceability Quality audit (advisory) 2026-06-21T09:42:02.1175820Z - 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-21T09:42:02.1176063Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1176101Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1176303Z ### REQ-MIGRATE-1 traceability Quality audit (advisory) 2026-06-21T09:42:02.1176719Z - Title: Auto-detect and migrate a legacy claude_skill_owl install traceability Quality audit (advisory) 2026-06-21T09:42:02.1176932Z - Required stages: traceability Quality audit (advisory) 2026-06-21T09:42:02.1176966Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1177166Z ### REQ-INFRA-1 traceability Quality audit (advisory) 2026-06-21T09:42:02.1177610Z - Title: GitHub issue tracking for v1; tangled.org as migration target traceability Quality audit (advisory) 2026-06-21T09:42:02.1177819Z - Required stages: traceability Quality audit (advisory) 2026-06-21T09:42:02.1177848Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1178063Z ### REQ-INSTALL-5 traceability Quality audit (advisory) 2026-06-21T09:42:02.1179477Z - 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-21T09:42:02.1179702Z - Required stages: impl, int traceability Quality audit (advisory) 2026-06-21T09:42:02.1179739Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1179946Z ### REQ-INSTALL-9 traceability Quality audit (advisory) 2026-06-21T09:42:02.1183141Z - 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-21T09:42:02.1183390Z - Required stages: doc, impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1183427Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1183923Z ### REQ-INSTALL-10 traceability Quality audit (advisory) 2026-06-21T09:42:02.1187284Z - 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-21T09:42:02.1187531Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1187574Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1187779Z ### REQ-INSTALL-11 traceability Quality audit (advisory) 2026-06-21T09:42:02.1192619Z - 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-21T09:42:02.1192876Z - Required stages: doc, impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1192914Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1193129Z ### REQ-INSTALL-12 traceability Quality audit (advisory) 2026-06-21T09:42:02.1200160Z - 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-21T09:42:02.1200660Z - Required stages: doc, impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.1200699Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1200893Z ### REQ-REL-1 traceability Quality audit (advisory) 2026-06-21T09:42:02.1201920Z - 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-21T09:42:02.1202152Z - Required stages: doc, impl traceability Quality audit (advisory) 2026-06-21T09:42:02.1202191Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1202390Z ### REQ-REL-2 traceability Quality audit (advisory) 2026-06-21T09:42:02.1203760Z - 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-21T09:42:02.1203999Z - Required stages: impl, int traceability Quality audit (advisory) 2026-06-21T09:42:02.1204032Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1204224Z ### REQ-REL-3 traceability Quality audit (advisory) 2026-06-21T09:42:02.1205450Z - 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-21T09:42:02.1205691Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1205729Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1205927Z ### REQ-DOCS-1 traceability Quality audit (advisory) 2026-06-21T09:42:02.1206428Z - Title: Dual-audience docs (human + AI dev-agent), markdown once / two depths traceability Quality audit (advisory) 2026-06-21T09:42:02.1206661Z - Required stages: doc, impl traceability Quality audit (advisory) 2026-06-21T09:42:02.1206696Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1206899Z ### REQ-DOCS-2 traceability Quality audit (advisory) 2026-06-21T09:42:02.1207291Z - Title: Sub-10-minute runnable killer quickstart per audience traceability Quality audit (advisory) 2026-06-21T09:42:02.1207510Z - Required stages: doc, int traceability Quality audit (advisory) 2026-06-21T09:42:02.1207548Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1207749Z ### REQ-DOCS-3 traceability Quality audit (advisory) 2026-06-21T09:42:02.1208111Z - Title: Diátaxis structure; one canonical way to do X traceability Quality audit (advisory) 2026-06-21T09:42:02.1208319Z - Required stages: doc traceability Quality audit (advisory) 2026-06-21T09:42:02.1208358Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1208560Z ### REQ-DOCS-4 traceability Quality audit (advisory) 2026-06-21T09:42:02.1209109Z - Title: Agent-consumable layer (llms.txt, manifest schema, MCP, CLI help) traceability Quality audit (advisory) 2026-06-21T09:42:02.1209347Z - Required stages: doc, impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1209381Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1209591Z ### REQ-DOCS-5 traceability Quality audit (advisory) 2026-06-21T09:42:02.1210068Z - Title: Anti-drift: rustdoc/schema/exports/CLI-help generated + CI-checked traceability Quality audit (advisory) 2026-06-21T09:42:02.1210315Z - Required stages: impl, int traceability Quality audit (advisory) 2026-06-21T09:42:02.1210352Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1210602Z ### REQ-HAZARD-GRACE-BEFORE-SIGNOFF traceability Quality audit (advisory) 2026-06-21T09:42:02.1211077Z - Title: Grace-period wait completes before composing INIT_SIGNOFF (1.1) traceability Quality audit (advisory) 2026-06-21T09:42:02.1211307Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1211344Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1211592Z ### REQ-HAZARD-INFO-JSON-TORN-READ traceability Quality audit (advisory) 2026-06-21T09:42:02.1211946Z - Title: State-file reads tolerate concurrent writes (1.2) traceability Quality audit (advisory) 2026-06-21T09:42:02.1212175Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1212207Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1212451Z ### REQ-HAZARD-STALE-INDEX-LOCK traceability Quality audit (advisory) 2026-06-21T09:42:02.1212752Z - Title: Sweep stale lockfiles on daemon boot (1.3) traceability Quality audit (advisory) 2026-06-21T09:42:02.1212989Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1213027Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1213256Z ### REQ-HAZARD-DEFERRED-DRAIN traceability Quality audit (advisory) 2026-06-21T09:42:02.1213710Z - Title: Deferred spool rows excluded from the event-stream drain (1.4) traceability Quality audit (advisory) 2026-06-21T09:42:02.1213934Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1213972Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1214201Z ### REQ-HAZARD-WORKER-PATH traceability Quality audit (advisory) 2026-06-21T09:42:02.1214645Z - Title: Single source of truth for Worker/Psyche perch location (1.5) traceability Quality audit (advisory) 2026-06-21T09:42:02.1214989Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1215028Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1215274Z ### REQ-HAZARD-PARENT-PID-PREFER traceability Quality audit (advisory) 2026-06-21T09:42:02.1215742Z - Title: Prefer stable parent PID / broker handle over ephemeral PID (2.1) traceability Quality audit (advisory) 2026-06-21T09:42:02.1215952Z - Required stages: traceability Quality audit (advisory) 2026-06-21T09:42:02.1215987Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1216231Z ### REQ-HAZARD-STDIN-SESSION-ID traceability Quality audit (advisory) 2026-06-21T09:42:02.1216534Z - Title: Stdin session_id precedence over env (2.2) traceability Quality audit (advisory) 2026-06-21T09:42:02.1216745Z - Required stages: traceability Quality audit (advisory) 2026-06-21T09:42:02.1216783Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1217036Z ### REQ-HAZARD-HANDOFF-ARGV-COMPAT traceability Quality audit (advisory) 2026-06-21T09:42:02.1217422Z - Title: Broker/brain IPC + handoff argv version-tolerant (2.3) traceability Quality audit (advisory) 2026-06-21T09:42:02.1217755Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1217793Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1218013Z ### REQ-HAZARD-GEN-START-NOW traceability Quality audit (advisory) 2026-06-21T09:42:02.1218351Z - Title: gen_start = now() on cold-start and handoff (2.4) traceability Quality audit (advisory) 2026-06-21T09:42:02.1218586Z - Required stages: impl, int traceability Quality audit (advisory) 2026-06-21T09:42:02.1218624Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1218861Z ### REQ-HAZARD-EPHEMERAL-CLEANUP traceability Quality audit (advisory) 2026-06-21T09:42:02.1219321Z - Title: Ephemeral perch cleanup on every ring exit path (3.1) traceability Quality audit (advisory) 2026-06-21T09:42:02.1219555Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1219593Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1219860Z ### REQ-HAZARD-STALE-SIGNOFF-SENTINEL traceability Quality audit (advisory) 2026-06-21T09:42:02.1220264Z - Title: Stale signoff sentinel does not kill a fresh start (3.2) traceability Quality audit (advisory) 2026-06-21T09:42:02.1220485Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1220523Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1220767Z ### REQ-HAZARD-ECHO-BEFORE-SIGNOFF traceability Quality audit (advisory) 2026-06-21T09:42:02.1221218Z - Title: Echo-commune fires before INIT_SIGNOFF on orphan teardown (3.3) traceability Quality audit (advisory) 2026-06-21T09:42:02.1221453Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1221491Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1221747Z ### REQ-HAZARD-ENVELOPE-DECODE-ORDER traceability Quality audit (advisory) 2026-06-21T09:42:02.1222101Z - Title: Envelope decode order, ampersand decoded last (4.1) traceability Quality audit (advisory) 2026-06-21T09:42:02.1222328Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1222372Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1222619Z ### REQ-HAZARD-ENVELOPE-CR-LINESAFE traceability Quality audit (advisory) 2026-06-21T09:42:02.1227272Z - 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-21T09:42:02.1227516Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1227558Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1227811Z ### REQ-HAZARD-ENVELOPE-PARSER-SAFE traceability Quality audit (advisory) 2026-06-21T09:42:02.1228234Z - Title: Two-slice envelope parser is panic-free and tolerant (4.2) traceability Quality audit (advisory) 2026-06-21T09:42:02.1228460Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1228502Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1228750Z ### REQ-HAZARD-EVENTPART-REASSEMBLY traceability Quality audit (advisory) 2026-06-21T09:42:02.1229358Z - Title: EVENT-PART split/reassembly is byte-exact; orphan parts dropped silently traceability Quality audit (advisory) 2026-06-21T09:42:02.1229590Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1229618Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1229844Z ### REQ-HAZARD-ID-CHARSET traceability Quality audit (advisory) 2026-06-21T09:42:02.1230482Z - Title: Addressable-id charset reserves :/@ delimiters; validated at every creation seam (4.6) traceability Quality audit (advisory) 2026-06-21T09:42:02.1230716Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1230745Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1231002Z ### REQ-HAZARD-REGISTRY-STALE-CLEAN traceability Quality audit (advisory) 2026-06-21T09:42:02.1231464Z - Title: Stale registry entries degrade to fallback, never hard-fail (4.3) traceability Quality audit (advisory) 2026-06-21T09:42:02.1231704Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1231732Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1231981Z ### REQ-HAZARD-REGISTRY-CONCURRENT traceability Quality audit (advisory) 2026-06-21T09:42:02.1232627Z - Title: Concurrent SQLite openers (registry/spool) must not fail with 'database is locked' (4.7) traceability Quality audit (advisory) 2026-06-21T09:42:02.1232860Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1233004Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1233257Z ### REQ-HAZARD-REGISTRY-DIR-CREATE traceability Quality audit (advisory) 2026-06-21T09:42:02.1234162Z - 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-21T09:42:02.1234409Z - Required stages: doc, impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1234447Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1234702Z ### REQ-HAZARD-REGISTRY-EPOCH-LEASE traceability Quality audit (advisory) 2026-06-21T09:42:02.1235746Z - 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-21T09:42:02.1235985Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1236022Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1236276Z ### REQ-HAZARD-DEFERRED-SURVIVE-DRAIN traceability Quality audit (advisory) 2026-06-21T09:42:02.1236666Z - Title: Deferred rows survive poll drain (4.4) traceability Quality audit (advisory) 2026-06-21T09:42:02.1236900Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1236928Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1237168Z ### REQ-HAZARD-INBOX-NO-DOUBLE traceability Quality audit (advisory) 2026-06-21T09:42:02.1237467Z - Title: No double-delivery via legacy inbox (4.5) traceability Quality audit (advisory) 2026-06-21T09:42:02.1237712Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1237746Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1237998Z ### REQ-HAZARD-WINDOWS-PID-RECYCLE traceability Quality audit (advisory) 2026-06-21T09:42:02.1238366Z - Title: Windows PID-recycling false positives guarded (5.1) traceability Quality audit (advisory) 2026-06-21T09:42:02.1238608Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1238637Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1238866Z ### REQ-HAZARD-EBUSY-RENAME traceability Quality audit (advisory) 2026-06-21T09:42:02.1239349Z - Title: tmp-write + atomic-rename + retry on Windows EBUSY (5.2) traceability Quality audit (advisory) 2026-06-21T09:42:02.1239577Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1239611Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1239857Z ### REQ-HAZARD-SUBPROCESS-TIMEOUT traceability Quality audit (advisory) 2026-06-21T09:42:02.1240245Z - Title: Every harness/git subprocess has a timeout (5.3) traceability Quality audit (advisory) 2026-06-21T09:42:02.1240479Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1240517Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1240761Z ### REQ-HAZARD-UNC-PATH-STRIP traceability Quality audit (advisory) 2026-06-21T09:42:02.1241127Z - Title: Strip Windows UNC prefix on serialized paths (5.4) traceability Quality audit (advisory) 2026-06-21T09:42:02.1241347Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1241376Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1241629Z ### REQ-HAZARD-SINGLE-PATH-SOURCE traceability Quality audit (advisory) 2026-06-21T09:42:02.1242086Z - Title: Single path/registry source of truth; no layout ambiguity (6.1) traceability Quality audit (advisory) 2026-06-21T09:42:02.1242320Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1242353Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1242588Z ### REQ-HAZARD-SOFT-CLEANUP traceability Quality audit (advisory) 2026-06-21T09:42:02.1243062Z - Title: Soft-cleanup preserves state, removes only the ready marker (6.2) traceability Quality audit (advisory) 2026-06-21T09:42:02.1243349Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1243386Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1243636Z ### REQ-HAZARD-CASCADE-WIPE-GUARD traceability Quality audit (advisory) 2026-06-21T09:42:02.1244054Z - Title: No hard-delete of a parent hosting non-empty children (6.3) traceability Quality audit (advisory) 2026-06-21T09:42:02.1244298Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1244326Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1244588Z ### REQ-HAZARD-DROP-FILE-SINGLE-WRITER traceability Quality audit (advisory) 2026-06-21T09:42:02.1244936Z - Title: Drop files are daemon-owned single-writer (6.4) traceability Quality audit (advisory) 2026-06-21T09:42:02.1245169Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1245206Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1245473Z ### REQ-HAZARD-DIRECT-WRITE-PRECEDENCE traceability Quality audit (advisory) 2026-06-21T09:42:02.1246020Z - Title: Direct-write precedence marker (with node id) guards stale overwrite (6.5) traceability Quality audit (advisory) 2026-06-21T09:42:02.1246258Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1246296Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1246555Z ### REQ-HAZARD-CONFLICT-BOTH-PRESERVED traceability Quality audit (advisory) 2026-06-21T09:42:02.1248148Z - 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-21T09:42:02.1248383Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1248421Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1248678Z ### REQ-HAZARD-DETACHED-PIPE-INHERIT traceability Quality audit (advisory) 2026-06-21T09:42:02.1251636Z - 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-21T09:42:02.1251993Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1252026Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1252255Z ### REQ-HAZARD-CONPTY-DSR traceability Quality audit (advisory) 2026-06-21T09:42:02.1252791Z - Title: ConPTY reader must auto-answer DSR (ESC[6n) or all child output stalls (5.5) traceability Quality audit (advisory) 2026-06-21T09:42:02.1253033Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1253067Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1253336Z ### REQ-HAZARD-WIN-PTY-PROGRAM-RESOLVE traceability Quality audit (advisory) 2026-06-21T09:42:02.1258270Z - 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-21T09:42:02.1258680Z - Required stages: doc, impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.1258718Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1259042Z ### REQ-HAZARD-CHILD-CONSOLE-FLASH traceability Quality audit (advisory) 2026-06-21T09:42:02.1260235Z - 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-21T09:42:02.1260469Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1260507Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1260751Z ### REQ-HAZARD-INSTANT-UNDERFLOW traceability Quality audit (advisory) 2026-06-21T09:42:02.1262368Z - 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-21T09:42:02.1262591Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1262634Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1262887Z ### REQ-HAZARD-PUMP-IPC-DEADLINE traceability Quality audit (advisory) 2026-06-21T09:42:02.1265032Z - 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-21T09:42:02.1265272Z - Required stages: doc, impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1265309Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1265562Z ### REQ-HAZARD-BROKER-QUIC-DEADLINE traceability Quality audit (advisory) 2026-06-21T09:42:02.1273968Z - 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-21T09:42:02.1274264Z - Required stages: doc, impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.1274301Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1274557Z ### REQ-HAZARD-BROKER-SEED-WIRE-SKEW traceability Quality audit (advisory) 2026-06-21T09:42:02.1284514Z - 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-21T09:42:02.1284989Z - Required stages: doc, impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1285017Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1285260Z ### REQ-HAZARD-SUDO-SECURE-PATH traceability Quality audit (advisory) 2026-06-21T09:42:02.1287460Z - 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-21T09:42:02.1287694Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1287732Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1287956Z ### REQ-HAZARD-SELF-ELEVATE traceability Quality audit (advisory) 2026-06-21T09:42:02.1293900Z - 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-21T09:42:02.1294158Z - Required stages: unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1294195Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1294435Z ### REQ-HAZARD-LOCAL-API-AUTH traceability Quality audit (advisory) 2026-06-21T09:42:02.1294964Z - Title: Every local `api` mutation authenticated to an endpoint/session (codex #13) traceability Quality audit (advisory) 2026-06-21T09:42:02.1295197Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1295230Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1295473Z ### REQ-HAZARD-RESTART-IDEMPOTENT traceability Quality audit (advisory) 2026-06-21T09:42:02.1296163Z - Title: Idempotent/exactly-once delivery across brain restart at every broker boundary (codex #14) traceability Quality audit (advisory) 2026-06-21T09:42:02.1296417Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.1296451Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1296684Z ### REQ-HAZARD-UPDATE-ROLLBACK traceability Quality audit (advisory) 2026-06-21T09:42:02.1297365Z - Title: Self-update rejects version rollback; metadata expiry + adapter content signing (codex #5) traceability Quality audit (advisory) 2026-06-21T09:42:02.1297586Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1297624Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1297884Z ### REQ-HAZARD-DAEMON-HOSTED-LIVENESS traceability Quality audit (advisory) 2026-06-21T09:42:02.1299155Z - 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-21T09:42:02.1299398Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.1299431Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1299698Z ### REQ-HAZARD-BROKER-PROCESS-ISOLATION traceability Quality audit (advisory) 2026-06-21T09:42:02.1306499Z - 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-21T09:42:02.1306887Z - Required stages: doc, impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.1306925Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1307173Z ### REQ-HAZARD-ROLLBACK-STATE-COMPAT traceability Quality audit (advisory) 2026-06-21T09:42:02.1311796Z - 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-21T09:42:02.1312152Z - Required stages: doc, impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1312191Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1312444Z ### REQ-HAZARD-BRAIN-RESPAWN-PATH traceability Quality audit (advisory) 2026-06-21T09:42:02.1319146Z - 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-21T09:42:02.1319437Z - Required stages: doc, impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.1319474Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1319723Z ### REQ-HAZARD-PSYCHE-OUTBOUND-PROXY traceability Quality audit (advisory) 2026-06-21T09:42:02.1321747Z - 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-21T09:42:02.1321981Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1322032Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1322375Z ### REQ-HAZARD-DAEMON-SCHED-NONBLOCKING traceability Quality audit (advisory) 2026-06-21T09:42:02.1325152Z - 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-21T09:42:02.1325590Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1325628Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1326087Z ### REQ-HAZARD-PAIR-TRANSCRIPT-BIND traceability Quality audit (advisory) 2026-06-21T09:42:02.1329300Z - 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-21T09:42:02.1329711Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1329753Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1330182Z ### REQ-HAZARD-PAIR-SEED-ROTATION traceability Quality audit (advisory) 2026-06-21T09:42:02.1332944Z - 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-21T09:42:02.1333526Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1333565Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1333984Z ### REQ-HAZARD-PAIR-RATE-LIMIT traceability Quality audit (advisory) 2026-06-21T09:42:02.1338414Z - 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-21T09:42:02.1338834Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1338878Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1339387Z ### REQ-HAZARD-WAN-ORIGIN-AUTH traceability Quality audit (advisory) 2026-06-21T09:42:02.1343275Z - 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-21T09:42:02.1343706Z - Required stages: doc, impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1343748Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1344111Z ### REQ-CONSENT-1 traceability Quality audit (advisory) 2026-06-21T09:42:02.1349179Z - 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-21T09:42:02.1349804Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1349904Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1350242Z ### REQ-CONSENT-2 traceability Quality audit (advisory) 2026-06-21T09:42:02.1353301Z - 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-21T09:42:02.1353623Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1353661Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1353903Z ### REQ-PRES-1 traceability Quality audit (advisory) 2026-06-21T09:42:02.1358500Z - 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-21T09:42:02.1358829Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.1358871Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1359205Z ### REQ-SHELL-1 traceability Quality audit (advisory) 2026-06-21T09:42:02.1362463Z - 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-21T09:42:02.1362778Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.1362806Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1363054Z ### REQ-SHELL-2 traceability Quality audit (advisory) 2026-06-21T09:42:02.1366953Z - 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-21T09:42:02.1367215Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.1367248Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1367502Z ### REQ-HAZARD-ELEVATED-DAEMON-SPAWN traceability Quality audit (advisory) 2026-06-21T09:42:02.1370967Z - 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-21T09:42:02.1371615Z - Required stages: doc, impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1371658Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1371909Z ### REQ-HAZARD-REGISTRY-GHOST-ROWS traceability Quality audit (advisory) 2026-06-21T09:42:02.1375367Z - 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-21T09:42:02.1375614Z - Required stages: doc, impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1375653Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1375852Z ### REQ-CLI-1 traceability Quality audit (advisory) 2026-06-21T09:42:02.1378930Z - 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-21T09:42:02.1379235Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1379268Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1379464Z ### REQ-CLI-2 traceability Quality audit (advisory) 2026-06-21T09:42:02.1381485Z - 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-21T09:42:02.1381719Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1381757Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1381960Z ### REQ-CLI-3 traceability Quality audit (advisory) 2026-06-21T09:42:02.1384028Z - 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-21T09:42:02.1384266Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1384300Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1384503Z ### REQ-CLI-4 traceability Quality audit (advisory) 2026-06-21T09:42:02.1390101Z - 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-21T09:42:02.1390339Z - Required stages: traceability Quality audit (advisory) 2026-06-21T09:42:02.1390378Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1390585Z ### REQ-SUBNET-5 traceability Quality audit (advisory) 2026-06-21T09:42:02.1393447Z - 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-21T09:42:02.1393706Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.1393744Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1393954Z ### REQ-SUBNET-6 traceability Quality audit (advisory) 2026-06-21T09:42:02.1395925Z - 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-21T09:42:02.1396277Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1396314Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1396530Z ### REQ-SUBNET-7 traceability Quality audit (advisory) 2026-06-21T09:42:02.1401055Z - 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-21T09:42:02.1401298Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1401327Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1401531Z ### REQ-SUBNET-8 traceability Quality audit (advisory) 2026-06-21T09:42:02.1404403Z - 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-21T09:42:02.1404651Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1404689Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1404899Z ### REQ-INSTALL-6 traceability Quality audit (advisory) 2026-06-21T09:42:02.1408020Z - 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-21T09:42:02.1408268Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1408306Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1408520Z ### REQ-INSTALL-7 traceability Quality audit (advisory) 2026-06-21T09:42:02.1411536Z - 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-21T09:42:02.1411777Z - Required stages: impl traceability Quality audit (advisory) 2026-06-21T09:42:02.1411815Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1412010Z ### REQ-INSTALL-8 traceability Quality audit (advisory) 2026-06-21T09:42:02.1415126Z - 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-21T09:42:02.1415351Z - Required stages: impl traceability Quality audit (advisory) 2026-06-21T09:42:02.1415389Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1415578Z ### REQ-CONV-1 traceability Quality audit (advisory) 2026-06-21T09:42:02.1419403Z - 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-21T09:42:02.1419663Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1419701Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1419897Z ### REQ-CONV-2 traceability Quality audit (advisory) 2026-06-21T09:42:02.1422786Z - 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-21T09:42:02.1423139Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1423176Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1423378Z ### REQ-PAIR-8 traceability Quality audit (advisory) 2026-06-21T09:42:02.1426744Z - 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-21T09:42:02.1427097Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1427137Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1427335Z ### REQ-DAEMON-5 traceability Quality audit (advisory) 2026-06-21T09:42:02.1430768Z - 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-21T09:42:02.1431025Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1431063Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1431267Z ### REQ-DAEMON-6 traceability Quality audit (advisory) 2026-06-21T09:42:02.1436403Z - 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-21T09:42:02.1436665Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1436689Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1436890Z ### REQ-DAEMON-7 traceability Quality audit (advisory) 2026-06-21T09:42:02.1440699Z - 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-21T09:42:02.1440951Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1440989Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1441188Z ### REQ-DAEMON-8 traceability Quality audit (advisory) 2026-06-21T09:42:02.1443695Z - 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-21T09:42:02.1443940Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1443973Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1444174Z ### REQ-DAEMON-9 traceability Quality audit (advisory) 2026-06-21T09:42:02.1450542Z - 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-21T09:42:02.1450923Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1450961Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1451208Z ### REQ-HAZARD-LIVEHOST-BOOT-RACE traceability Quality audit (advisory) 2026-06-21T09:42:02.1461088Z - 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-21T09:42:02.1461493Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.1461530Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1461782Z ### REQ-HAZARD-TEMPLATE-ARGV-FILL traceability Quality audit (advisory) 2026-06-21T09:42:02.1472261Z - 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-21T09:42:02.1472549Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.1472588Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1472850Z ### REQ-HAZARD-LIVEHOST-NONRESIDENT traceability Quality audit (advisory) 2026-06-21T09:42:02.1481854Z - 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-21T09:42:02.1482266Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.1482383Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1482619Z ### REQ-HAZARD-EPOCH-RESET traceability Quality audit (advisory) 2026-06-21T09:42:02.1486180Z - 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-21T09:42:02.1486400Z - Required stages: traceability Quality audit (advisory) 2026-06-21T09:42:02.1486428Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1486627Z ### REQ-MESH-1 traceability Quality audit (advisory) 2026-06-21T09:42:02.1492419Z - 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-21T09:42:02.1492686Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.1492725Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1492924Z ### REQ-MESH-2 traceability Quality audit (advisory) 2026-06-21T09:42:02.1500031Z - 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-21T09:42:02.1500317Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.1500351Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1500556Z ### REQ-MESH-3 traceability Quality audit (advisory) 2026-06-21T09:42:02.1504998Z - 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-21T09:42:02.1505252Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.1505280Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1505479Z ### REQ-MESH-4 traceability Quality audit (advisory) 2026-06-21T09:42:02.1511536Z - 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-21T09:42:02.1511997Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.1512030Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1512237Z ### REQ-MESH-5 traceability Quality audit (advisory) 2026-06-21T09:42:02.1515954Z - 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-21T09:42:02.1516202Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1516236Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1516446Z ### REQ-MESH-6 traceability Quality audit (advisory) 2026-06-21T09:42:02.1519728Z - 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-21T09:42:02.1519979Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1520012Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1520222Z ### REQ-SHELL-3 traceability Quality audit (advisory) 2026-06-21T09:42:02.1525090Z - 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-21T09:42:02.1525355Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.1525398Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1525603Z ### REQ-SHELL-4 traceability Quality audit (advisory) 2026-06-21T09:42:02.1530510Z - 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-21T09:42:02.1530772Z - Required stages: doc, impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.1530810Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1531021Z ### REQ-CONSENT-3 traceability Quality audit (advisory) 2026-06-21T09:42:02.1536021Z - 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-21T09:42:02.1536278Z - Required stages: doc, impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.1536307Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1536516Z ### REQ-SHELL-5 traceability Quality audit (advisory) 2026-06-21T09:42:02.1539801Z - 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-21T09:42:02.1540268Z - Required stages: doc, impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.1540301Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1540563Z ### REQ-HAZARD-VIEWER-CLOSE-DETACH traceability Quality audit (advisory) 2026-06-21T09:42:02.1566766Z - 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-21T09:42:02.1567146Z - Required stages: doc, impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.1567184Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1567421Z ### REQ-HAZARD-ATTACH-WEDGE traceability Quality audit (advisory) 2026-06-21T09:42:02.1581654Z - 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-21T09:42:02.1582147Z - Required stages: int traceability Quality audit (advisory) 2026-06-21T09:42:02.1582184Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1582433Z ### REQ-PICKER-HISTORY-FRESH traceability Quality audit (advisory) 2026-06-21T09:42:02.1585384Z - 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-21T09:42:02.1585639Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1585676Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1585918Z ### REQ-PICKER-ONLINE-ACTION traceability Quality audit (advisory) 2026-06-21T09:42:02.1590171Z - 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-21T09:42:02.1590424Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1590462Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1590715Z ### REQ-ENDPOINT-LIST-MERGE-LOCAL traceability Quality audit (advisory) 2026-06-21T09:42:02.1595440Z - 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-21T09:42:02.1595755Z - Required stages: doc, impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1595794Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1596074Z ### REQ-HAZARD-ENDPOINT-RUN-ATTACH-OUTPUT traceability Quality audit (advisory) 2026-06-21T09:42:02.1609845Z - 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-21T09:42:02.1610347Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.1610371Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1610600Z ### REQ-CLI-HELP-MARKDOWN traceability Quality audit (advisory) 2026-06-21T09:42:02.1618740Z - 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-21T09:42:02.1619103Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1619141Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1624511Z ### REQ-HAZARD-WMI-DAEMON-WINDOW traceability Quality audit (advisory) 2026-06-21T09:42:02.1631429Z - 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-21T09:42:02.1631725Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.1631758Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1631983Z ### REQ-CLI-OUTPUT-MARKDOWN traceability Quality audit (advisory) 2026-06-21T09:42:02.1643995Z - 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-21T09:42:02.1644530Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1644568Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1644845Z ### REQ-HAZARD-INJECT-CONTROL-COEXIST traceability Quality audit (advisory) 2026-06-21T09:42:02.1665069Z - 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-21T09:42:02.1665398Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.1665436Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1665845Z ### REQ-HAZARD-VIEWER-STARVE-UNDER-CONTROLLER-BACKPRESSURE traceability Quality audit (advisory) 2026-06-21T09:42:02.1680732Z - Title: A SLOW controller must not starve a concurrent `rc --view` VIEWER. W1 (REQ-HAZARD-INJECT-CONTROL-COEXIST) moved the controller SOCKET WRITE off the drain thread onto controller_writer, but left the bounded HANDOFF (ControllerJob::deliver) as an INLINE try_send SLEEP-POLL on the drain (broker.rs:1450-1457 → deliver:669-685, up to CONTROLLER_WRITE_DEADLINE=5s). So when a controller drains slower than the PTY floods, its CONTROLLER_CHANNEL_DEPTH(4096) channel fills, deliver() polls inline, and the DRAIN THREAD is throttled to the controller's read rate → OutputLog::append's viewer fan-out (try_send) stops running → a concurrent VIEWER receives only the initial replay then nothing (root 'b4', warm forkpty: a_journaled c1=0/EVICT=0/got_output=FALSE; steady-state-near-full = no recovery; forkpty-only, floods harder than Windows ConPTY). The viewer-not-starved-by-a-busy-session property is legitimate (rc --view of a noisy session must show LIVE output). FIX: the controller becomes a SINGLE NON-BLOCKING try_send (like a viewer), done IN append() under the log lock; deliver()'s sleep-poll DELETED; the drain NEVER sleeps. ControllerSink gains a stateful last_ok deadline → a TRULY-stalled controller (continuous-Full past CONTROLLER_WRITE_DEADLINE) is evicted (bounded-wedge preserved); a slow-but-alive controller DROPS frames + falls behind the ring (resume-from-floor, the existing reconnect case). B2 GAPLESS-HANDOFF PRESERVED via a CONTIGUOUS delivered_through: controller_writer advances the cursor ONLY when the written seq == cursor (next expected); a gap from a drop FREEZES the cursor at last-contiguous so a re-attaching brain's resume_seq never skips a dropped chunk (a high-watermark advance past the gap would be a not-exactly-once resume = B2 violation, doyle's gate). (v0.13.0) traceability Quality audit (advisory) 2026-06-21T09:42:02.1681244Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1681281Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1681533Z ### REQ-MSG-IDLE-TRANSLATION-BINARY traceability Quality audit (advisory) 2026-06-21T09:42:02.1695109Z - 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-21T09:42:02.1695429Z - Required stages: doc, impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.1695467Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1695707Z ### REQ-HAZARD-BIND-CWD-UNSET traceability Quality audit (advisory) 2026-06-21T09:42:02.1702673Z - 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-21T09:42:02.1703184Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.1703226Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1703446Z ### REQ-PICKER-UX-V013 traceability Quality audit (advisory) 2026-06-21T09:42:02.1707661Z - 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-21T09:42:02.1707896Z - Required stages: traceability Quality audit (advisory) 2026-06-21T09:42:02.1707934Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1708187Z ### REQ-HAZARD-DRIVEN-BY-SELFHEAL traceability Quality audit (advisory) 2026-06-21T09:42:02.1712412Z - 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-21T09:42:02.1712664Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.1712701Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1712981Z ### REQ-HAZARD-DRIVEN-BY-IDLE-REMOTE-EVICT traceability Quality audit (advisory) 2026-06-21T09:42:02.1726246Z - 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-21T09:42:02.1726514Z - Required stages: traceability Quality audit (advisory) 2026-06-21T09:42:02.1726551Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1726804Z ### REQ-HAZARD-RC-INPUT-KEY-ENCODING traceability Quality audit (advisory) 2026-06-21T09:42:02.1739175Z - 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-21T09:42:02.1739666Z - Required stages: impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1739695Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1739953Z ### REQ-HAZARD-EFFECT-JOURNAL-PTY-WEDGE traceability Quality audit (advisory) 2026-06-21T09:42:02.1764970Z - 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-21T09:42:02.1765539Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.1765577Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1765834Z ### REQ-HAZARD-RC-ATTACH-ONLINE-RACE traceability Quality audit (advisory) 2026-06-21T09:42:02.1777067Z - 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-21T09:42:02.1777348Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.1777381Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1777621Z ### REQ-RC-KEY-VT-TRANSLATE traceability Quality audit (advisory) 2026-06-21T09:42:02.1793454Z - 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-21T09:42:02.1793956Z - Required stages: doc, impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1793993Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1794268Z ### REQ-HAZARD-PTY-INPUT-WRITER-WEDGE traceability Quality audit (advisory) 2026-06-21T09:42:02.1811686Z - 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-21T09:42:02.1812019Z - Required stages: impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.1812043Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1812286Z ### REQ-SESSION-RESUME-TEMPLATE traceability Quality audit (advisory) 2026-06-21T09:42:02.1830873Z - 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-21T09:42:02.1831425Z - Required stages: doc, impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.1831453Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1831671Z ### REQ-RC-WIN-PASTE traceability Quality audit (advisory) 2026-06-21T09:42:02.1844976Z - 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-21T09:42:02.1845286Z - Required stages: doc, impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1845325Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1845601Z ### REQ-HAZARD-INPUT-ACK-BACKPRESSURE traceability Quality audit (advisory) 2026-06-21T09:42:02.1865406Z - 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-21T09:42:02.1865960Z - Required stages: doc, impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.1865993Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1866226Z ### REQ-RC-MOUSE-FORWARD traceability Quality audit (advisory) 2026-06-21T09:42:02.1878451Z - 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-21T09:42:02.1878759Z - Required stages: doc, impl, unit traceability Quality audit (advisory) 2026-06-21T09:42:02.1878797Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1879140Z ### REQ-HAZARD-CONTROLLER-WRITER-REORDER traceability Quality audit (advisory) 2026-06-21T09:42:02.1918288Z - 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-21T09:42:02.1918921Z - Required stages: doc, impl, unit, int traceability Quality audit (advisory) 2026-06-21T09:42:02.1919122Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1919404Z ### REQ-HAZARD-CONTROLLER-RETAKE-FLOOR traceability Quality audit (advisory) 2026-06-21T09:42:02.1931522Z - 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-21T09:42:02.1931897Z - Required stages: traceability Quality audit (advisory) 2026-06-21T09:42:02.1931926Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1932144Z ## How to report back traceability Quality audit (advisory) 2026-06-21T09:42:02.1932183Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1932621Z For every (requirement, failing criterion) pair, emit one finding: traceability Quality audit (advisory) 2026-06-21T09:42:02.1932649Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1932850Z { traceability Quality audit (advisory) 2026-06-21T09:42:02.1933093Z "code": "requirement_quality", traceability Quality audit (advisory) 2026-06-21T09:42:02.1933331Z "requirementId": "REQ-...", traceability Quality audit (advisory) 2026-06-21T09:42:02.1933742Z "criterion": "singular" | "verifiable" | "atomic" | "active-voice", traceability Quality audit (advisory) 2026-06-21T09:42:02.1933989Z "message": "", traceability Quality audit (advisory) 2026-06-21T09:42:02.1934283Z "suggestedRevision": "" traceability Quality audit (advisory) 2026-06-21T09:42:02.1934473Z } traceability Quality audit (advisory) 2026-06-21T09:42:02.1934515Z traceability Quality audit (advisory) 2026-06-21T09:42:02.1935001Z Wrap your response as { "findings": [ ... ] } listing only your concerns; the traceability Quality audit (advisory) 2026-06-21T09:42:02.1935365Z deterministic findings above don't need to be repeated. traceability Post Run actions/checkout@v5 2026-06-21T09:42:02.2090995Z Post job cleanup. traceability Post Run actions/checkout@v5 2026-06-21T09:42:02.2782900Z [command]/usr/bin/git version traceability Post Run actions/checkout@v5 2026-06-21T09:42:02.2812376Z git version 2.43.0 traceability Post Run actions/checkout@v5 2026-06-21T09:42:02.2842466Z Temporarily overriding HOME='/home/reavus/actions-runner/_work/_temp/38313de9-93a1-4645-9fe4-66b808d7f104' before making global git config changes traceability Post Run actions/checkout@v5 2026-06-21T09:42:02.2844357Z Adding repository directory to the temporary git global config as a safe directory traceability Post Run actions/checkout@v5 2026-06-21T09:42:02.2845860Z [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-21T09:42:02.2872460Z [command]/usr/bin/git config --local --name-only --get-regexp core\.sshCommand traceability Post Run actions/checkout@v5 2026-06-21T09:42:02.2896634Z [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-21T09:42:02.3113325Z [command]/usr/bin/git config --local --name-only --get-regexp http\.https\:\/\/github\.com\/\.extraheader traceability Post Run actions/checkout@v5 2026-06-21T09:42:02.3133235Z http.https://github.com/.extraheader traceability Post Run actions/checkout@v5 2026-06-21T09:42:02.3140375Z [command]/usr/bin/git config --local --unset-all http.https://github.com/.extraheader traceability Post Run actions/checkout@v5 2026-06-21T09:42:02.3165835Z [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-21T09:42:02.3349235Z [command]/usr/bin/git config --local --name-only --get-regexp ^includeIf\.gitdir: traceability Post Run actions/checkout@v5 2026-06-21T09:42:02.3372838Z [command]/usr/bin/git submodule foreach --recursive git config --local --show-origin --name-only --get-regexp remote.origin.url traceability Complete job 2026-06-21T09:42:02.3698198Z Cleaning up orphan processes n1-gate (self-hosted, Windows, hfenduleam) Set up job 2026-06-21T09:41:59.6949115Z Current runner version: '2.335.1' n1-gate (self-hosted, Windows, hfenduleam) Set up job 2026-06-21T09:41:59.6958382Z Runner name: 'hfenduleam' n1-gate (self-hosted, Windows, hfenduleam) Set up job 2026-06-21T09:41:59.6959072Z Runner group name: 'Default' n1-gate (self-hosted, Windows, hfenduleam) Set up job 2026-06-21T09:41:59.6959815Z Machine name: 'HFENDULEAM' n1-gate (self-hosted, Windows, hfenduleam) Set up job 2026-06-21T09:41:59.6962456Z ##[group]GITHUB_TOKEN Permissions n1-gate (self-hosted, Windows, hfenduleam) Set up job 2026-06-21T09:41:59.6963840Z Contents: read n1-gate (self-hosted, Windows, hfenduleam) Set up job 2026-06-21T09:41:59.6964185Z Metadata: read n1-gate (self-hosted, Windows, hfenduleam) Set up job 2026-06-21T09:41:59.6964495Z Packages: read n1-gate (self-hosted, Windows, hfenduleam) Set up job 2026-06-21T09:41:59.6964834Z ##[endgroup] n1-gate (self-hosted, Windows, hfenduleam) Set up job 2026-06-21T09:41:59.6966102Z Secret source: Actions n1-gate (self-hosted, Windows, hfenduleam) Set up job 2026-06-21T09:41:59.6966525Z Prepare workflow directory n1-gate (self-hosted, Windows, hfenduleam) Set up job 2026-06-21T09:41:59.7238295Z Prepare all required actions n1-gate (self-hosted, Windows, hfenduleam) Set up job 2026-06-21T09:41:59.7265578Z Getting action download info n1-gate (self-hosted, Windows, hfenduleam) Set up job 2026-06-21T09:42:00.0713020Z Download action repository 'actions/checkout@v5' (SHA:93cb6efe18208431cddfb8368fd83d5badbf9bfd) n1-gate (self-hosted, Windows, hfenduleam) Set up job 2026-06-21T09:42:00.6239470Z 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-21T09:42:00.6926020Z ##[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-21T09:42:00.6926986Z Get-Process spt,notify-shell -ErrorAction SilentlyContinue | n1-gate (self-hosted, Windows, hfenduleam) Reap stray workspace daemons (pre-checkout exe-lock guard) 2026-06-21T09:42:00.6927646Z  Where-Object { $_.Path -like "$env:GITHUB_WORKSPACE\*" } | n1-gate (self-hosted, Windows, hfenduleam) Reap stray workspace daemons (pre-checkout exe-lock guard) 2026-06-21T09:42:00.6928228Z  Stop-Process -Force -ErrorAction SilentlyContinue n1-gate (self-hosted, Windows, hfenduleam) Reap stray workspace daemons (pre-checkout exe-lock guard) 2026-06-21T09:42:00.6928719Z exit 0 n1-gate (self-hosted, Windows, hfenduleam) Reap stray workspace daemons (pre-checkout exe-lock guard) 2026-06-21T09:42:00.7013001Z 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-21T09:42:00.7013818Z ##[endgroup] n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:42:01.0703086Z ##[group]Run actions/checkout@v5 n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:42:01.0703584Z with: n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:42:01.0703879Z fetch-depth: 0 n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:42:01.0704197Z repository: SaberMage/spt-core n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:42:01.0707097Z token: *** n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:42:01.0707398Z ssh-strict: true n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:42:01.0707693Z ssh-user: git n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:42:01.0708014Z persist-credentials: true n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:42:01.0708351Z clean: true n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:42:01.0708694Z sparse-checkout-cone-mode: true n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:42:01.0709053Z fetch-tags: false n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:42:01.0709369Z show-progress: true n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:42:01.0709710Z lfs: false n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:42:01.0709997Z submodules: false n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:42:01.0710304Z set-safe-directory: true n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:42:01.0710644Z ##[endgroup] n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:42:01.2711524Z Syncing repository: SaberMage/spt-core n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:42:01.2713078Z ##[group]Getting Git version info n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:42:01.2713707Z Working directory is 'C:\actions-runner\_work\spt-core\spt-core' n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:42:01.2987054Z [command]"c:\program files\git\cmd\git.exe" version n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:42:01.3202606Z git version 2.43.0.windows.1 n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:42:01.3231223Z ##[endgroup] n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:42:01.3240706Z Copying 'C:\Users\decid\.gitconfig' to 'C:\actions-runner\_work\_temp\671ea358-1852-4c73-8763-b1ebb29834dc\.gitconfig' n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:42:01.3254712Z Temporarily overriding HOME='C:\actions-runner\_work\_temp\671ea358-1852-4c73-8763-b1ebb29834dc' before making global git config changes n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:42:01.3256253Z 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-21T09:42:01.3259699Z [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-21T09:42:01.3500363Z [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-21T09:42:01.3699592Z https://github.com/SaberMage/spt-core n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:42:01.3728937Z ##[group]Removing previously created refs, to avoid conflicts n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:42:01.3733567Z [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-21T09:42:01.3939142Z HEAD n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:42:01.4235228Z ##[endgroup] n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:42:01.4237615Z [command]"c:\program files\git\cmd\git.exe" submodule status n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:42:01.8480332Z ##[group]Cleaning the repository n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:42:01.8486693Z [command]"c:\program files\git\cmd\git.exe" clean -ffdx n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:42:03.2581188Z Removing target/ n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:42:03.2616877Z [command]"c:\program files\git\cmd\git.exe" reset --hard HEAD n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:42:03.3341037Z HEAD is now at c0bf77b Merge eb73da70b21789083fb6422e895676c0d37fa24f into 86f20ac831033a20bd5e096b1c318a75249179f3 n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:42:03.3373284Z ##[endgroup] n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:42:03.3378091Z ##[group]Disabling automatic garbage collection n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:42:03.3385779Z [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-21T09:42:03.3700603Z ##[endgroup] n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:42:03.3701049Z ##[group]Setting up auth n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:42:03.3707396Z [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-21T09:42:03.3949275Z [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-21T09:42:03.7900415Z [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-21T09:42:03.8135781Z [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-21T09:42:04.2052950Z [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-21T09:42:04.2284681Z [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-21T09:42:04.5950311Z [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-21T09:42:04.6209058Z ##[endgroup] n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:42:04.6209510Z ##[group]Fetching the repository n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:42:04.6216778Z [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/* +1cafc8afb1ed6606350cab07e057989c02fea0c7:refs/remotes/pull/27/merge n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:42:08.1603938Z From https://github.com/SaberMage/spt-core n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:42:08.1604526Z eb73da7..6a27b0b wedge-trace-v4 -> origin/wedge-trace-v4 n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:42:08.1605061Z + c0bf77b...1cafc8a 1cafc8afb1ed6606350cab07e057989c02fea0c7 -> pull/27/merge (forced update) n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:42:08.1747134Z ##[endgroup] n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:42:08.1747703Z ##[group]Determining the checkout info n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:42:08.1748123Z ##[endgroup] n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:42:08.1756203Z [command]"c:\program files\git\cmd\git.exe" sparse-checkout disable n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:42:08.2089511Z [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-21T09:42:08.2341900Z ##[group]Checking out the ref n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:42:08.2347076Z [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-21T09:42:08.2761211Z Warning: you are leaving 1 commit behind, not connected to n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:42:08.2761734Z any of your branches: n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:42:08.2761948Z n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:42:08.2762245Z c0bf77b Merge eb73da70b21789083fb6422e895676c0d37fa24f into 86f20ac831033a20bd5e096b1c318a75249179f3 n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:42:08.2762555Z n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:42:08.2762753Z If you want to keep it by creating a new branch, this may be a good time n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:42:08.2763037Z to do so with: n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:42:08.2763196Z n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:42:08.2763380Z git branch c0bf77b n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:42:08.2763614Z n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:42:08.2764053Z HEAD is now at 1cafc8a Merge 6a27b0b9a2658ec5039ce38b939c6bfdad2757fa into 86f20ac831033a20bd5e096b1c318a75249179f3 n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:42:08.2788513Z ##[endgroup] n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:42:08.3033704Z [command]"c:\program files\git\cmd\git.exe" log -1 --format=%H n1-gate (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:42:08.3250925Z 1cafc8afb1ed6606350cab07e057989c02fea0c7 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:08.3536801Z ##[group]Run $ErrorActionPreference = "Stop" n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:08.3537961Z $ErrorActionPreference = "Stop" n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:08.3538224Z $PIN = "0c95435" n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:08.3538475Z $CACHE = "$env:USERPROFILE\spt-n1-oldbroker" n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:08.3538734Z $BIN = "$CACHE\target\debug\spt.exe" n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:08.3539092Z $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-21T09:42:08.3539499Z 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-21T09:42:08.3539814Z  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-21T09:42:08.3540160Z  git clone $env:GITHUB_WORKSPACE $CACHE n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:08.3540526Z  git -C $CACHE checkout $PIN n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:08.3540942Z  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-21T09:42:08.3541280Z  Set-Content "$CACHE\.builtpin" $PIN n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:08.3541582Z } n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:08.3541749Z $env:SPT_N1_OLD_BROKER = $BIN n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:08.3542017Z cargo test -p spt --test n1_pairing -- --nocapture n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:08.3609442Z 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-21T09:42:08.3609761Z ##[endgroup] n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:09.5454965Z Compiling proc-macro2 v1.0.106 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:09.5455301Z Compiling unicode-ident v1.0.24 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:09.5455513Z Compiling quote v1.0.45 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:09.5457539Z Compiling cfg-if v1.0.4 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:09.5458027Z Compiling serde_core v1.0.228 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:09.5458705Z Compiling serde v1.0.228 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:09.5459435Z Compiling windows-link v0.2.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:09.5473329Z Compiling portable-atomic v1.13.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:09.5473909Z Compiling typenum v1.20.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:09.5474247Z Compiling getrandom v0.3.4 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:09.5474638Z Compiling pin-project-lite v0.2.17 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:09.5482293Z Compiling version_check v0.9.5 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:09.5482695Z Compiling critical-section v1.2.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:09.5483105Z Compiling shlex v2.0.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:09.5490716Z Compiling find-msvc-tools v0.1.9 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:09.5492529Z Compiling memchr v2.8.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:09.6455107Z Compiling windows-sys v0.61.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:09.6669661Z Compiling subtle v2.6.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:09.6863474Z Compiling smallvec v1.15.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:09.7141485Z Compiling futures-core v0.3.32 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:09.7153544Z Compiling equivalent v1.0.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:09.8782335Z Compiling bytes v1.11.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:09.8811082Z Compiling itoa v1.0.18 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:10.0191697Z Compiling semver v1.0.28 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:10.0352207Z Compiling stable_deref_trait v1.2.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:10.1171924Z Compiling log v0.4.32 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:10.1391888Z Compiling futures-sink v0.3.32 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:10.1459470Z Compiling futures-io v0.3.32 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:10.1592941Z Compiling generic-array v0.14.7 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:10.3215008Z Compiling rustc_version v0.4.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:10.3332439Z Compiling slab v0.4.12 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:10.3958743Z Compiling futures-channel v0.3.32 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:10.4148345Z Compiling hashbrown v0.17.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:10.4191387Z Compiling futures-task v0.3.32 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:10.4239876Z Compiling rustversion v1.0.22 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:10.7682209Z Compiling getrandom v0.2.17 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:10.7861559Z Compiling cpufeatures v0.2.17 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:10.8185775Z Compiling fnv v1.0.7 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:10.8352204Z Compiling libc v0.2.186 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:10.8397287Z Compiling strsim v0.11.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:10.8441400Z Compiling cfg_aliases v0.2.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:10.9256588Z Compiling jobserver v0.1.34 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:10.9257044Z Compiling rand_core v0.10.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:10.9414460Z Compiling litemap v0.8.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:10.9604290Z Compiling writeable v0.6.3 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:10.9785560Z Compiling autocfg v1.5.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:10.9891872Z Compiling icu_normalizer_data v2.2.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:11.0284383Z Compiling fs_extra v1.3.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:11.0450116Z Compiling ident_case v1.0.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:11.1404271Z Compiling cc v1.2.63 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:11.2297060Z Compiling indexmap v2.14.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:11.2464807Z Compiling icu_properties_data v2.2.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:11.2924365Z Compiling utf8_iter v1.0.4 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:11.3656289Z Compiling getrandom v0.4.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:11.3779617Z Compiling dunce v1.0.5 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:11.5175863Z Compiling syn v2.0.117 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:11.5691218Z Compiling percent-encoding v2.3.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:11.5994865Z Compiling crypto-common v0.1.7 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:11.6208056Z Compiling http v1.4.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:11.6665423Z Compiling unicode-segmentation v1.13.3 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:11.6740927Z Compiling aws-lc-rs v1.17.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:11.6741466Z Compiling thiserror v2.0.18 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:11.7874440Z Compiling cpufeatures v0.3.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:11.7874960Z Compiling scopeguard v1.2.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:11.8875665Z Compiling chacha20 v0.10.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:11.9633258Z Compiling lock_api v0.4.14 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:11.9865296Z Compiling form_urlencoded v1.2.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:11.9892483Z Compiling block-buffer v0.10.4 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:12.0795255Z Compiling cmake v0.1.58 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:12.1266048Z Compiling untrusted v0.9.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:12.1534803Z Compiling bitflags v2.12.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:12.1626666Z Compiling winapi v0.3.9 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:12.1845431Z Compiling rand v0.10.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:12.1899751Z Compiling digest v0.10.7 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:12.2319343Z Compiling num-traits v0.2.19 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:12.2886379Z Compiling windows-result v0.4.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:12.2926004Z Compiling windows-strings v0.5.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:12.3149618Z Compiling rustls v0.23.40 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:12.3357054Z Compiling heck v0.5.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:12.4525825Z Compiling convert_case v0.10.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:12.4645606Z Compiling atomic-waker v1.1.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:12.5339290Z Compiling anyhow v1.0.102 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:12.6922539Z Compiling unicode-xid v0.2.6 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:12.7128017Z Compiling const-oid v0.10.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:12.7491735Z Compiling zerocopy v0.8.50 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:12.7544468Z Compiling httparse v1.10.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:12.7553579Z Compiling parking_lot_core v0.9.12 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:12.8127754Z Compiling http-body v1.0.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:12.8997163Z Compiling curve25519-dalek v4.1.3 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:12.9894943Z Compiling hybrid-array v0.4.12 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:13.0495680Z Compiling ahash v0.8.12 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:13.0556942Z Compiling base64ct v1.8.3 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:13.2421661Z Compiling fastrand v2.4.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:13.2422412Z Compiling powerfmt v0.2.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:13.2984505Z Compiling either v1.16.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:13.5343586Z Compiling aws-lc-sys v0.41.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:13.5382596Z Compiling ring v0.17.14 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:13.6474549Z Compiling deranged v0.5.8 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:13.6588711Z Compiling pem-rfc7468 v1.0.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:13.7228186Z Compiling rand_core v0.6.4 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:13.8405327Z Compiling num-conv v0.2.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:13.8748376Z Compiling vcpkg v0.2.15 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:13.9414371Z Compiling time-core v0.1.8 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:13.9726859Z Compiling base64 v0.22.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:14.0321410Z Compiling tinyvec_macros v0.1.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:14.0457268Z Compiling pkg-config v0.3.33 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:14.0851285Z Compiling zmij v1.0.21 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:14.1445982Z Compiling try-lock v0.2.5 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:14.1856841Z Compiling data-encoding v2.11.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:14.2236400Z Compiling tower-service v0.3.3 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:14.2532214Z Compiling tinyvec v1.11.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:14.3730075Z Compiling want v0.3.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:14.4643317Z Compiling parking_lot v0.12.5 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:14.4855569Z Compiling block-buffer v0.12.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:14.5440866Z Compiling crypto-common v0.2.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:14.6535067Z Compiling sha2 v0.10.9 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:14.8427153Z Compiling vergen-lib v9.1.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:14.8612544Z Compiling inout v0.1.4 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:14.9780031Z Compiling n0-future v0.3.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:15.0840525Z Compiling diatomic-waker v0.2.3 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:15.1132741Z Compiling httpdate v1.0.3 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:15.1274489Z Compiling windows_x86_64_msvc v0.52.6 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:15.1449907Z Compiling libsqlite3-sys v0.30.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:15.2481641Z Compiling cordyceps v0.3.4 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:15.2881472Z Compiling winnow v1.0.3 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:15.3241810Z Compiling spin v0.10.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:15.4504273Z Compiling crossbeam-utils v0.8.21 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:15.4553229Z Compiling parking v2.2.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:15.5030134Z Compiling signature v2.2.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:15.5128882Z Compiling serde_json v1.0.150 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:15.6481717Z Compiling ed25519 v2.2.3 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:15.6590202Z Compiling futures-lite v2.6.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:15.7305797Z Compiling futures-buffered v0.2.13 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:15.7862493Z Compiling synstructure v0.13.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:15.8050748Z Compiling darling_core v0.20.11 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:15.8577940Z Compiling digest v0.11.3 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:16.0949066Z Compiling cipher v0.4.4 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:16.1486783Z Compiling vergen v9.1.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:16.1791832Z Compiling vergen-lib v0.1.6 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:16.1865218Z Compiling universal-hash v0.5.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:16.3454059Z Compiling curve25519-dalek v5.0.0-pre.6 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:16.3454502Z Compiling heapless v0.7.17 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:16.4029990Z Compiling noq-udp v0.10.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:16.4661338Z Compiling sync_wrapper v1.0.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:16.5077711Z 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-21T09:42:16.5221095Z Compiling byteorder v1.5.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:16.6380357Z 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-21T09:42:16.7500208Z Compiling allocator-api2 v0.2.21 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:16.7600933Z Compiling opaque-debug v0.3.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:16.8223787Z Compiling polyval v0.6.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:16.8351762Z Compiling hash32 v0.2.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:17.0004093Z Compiling spin v0.9.8 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:17.0765685Z Compiling vergen-gitcl v1.0.8 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:17.1055370Z Compiling windows-threading v0.2.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:17.1204771Z 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-21T09:42:17.1295891Z Compiling fallible-iterator v0.3.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:17.2119025Z Compiling ryu v1.0.23 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:17.2891920Z Compiling fallible-streaming-iterator v0.1.9 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:17.3087292Z Compiling signature v3.0.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:17.4179029Z Compiling tower-layer v0.3.3 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:17.5099712Z Compiling windows-targets v0.52.6 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:17.5791481Z Compiling ghash v0.5.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:17.5851772Z Compiling aes v0.8.4 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:17.6056191Z Compiling ctr v0.9.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:17.6529103Z Compiling sha2 v0.11.0-rc.5 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:17.6529618Z Compiling fs2 v0.4.3 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:17.7607135Z Compiling time v0.3.47 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:17.8001361Z Compiling http-body-util v0.1.3 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:17.8509515Z Compiling aead v0.5.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:17.9688057Z Compiling proc-macro-crate v3.5.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:18.0469244Z Compiling ipconfig v0.3.4 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:18.0914380Z Compiling widestring v1.2.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:18.1511579Z Compiling aes-gcm v0.10.3 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:18.3517818Z Compiling socket2 v0.6.4 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:18.3710114Z Compiling mio v1.2.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:18.4777091Z Compiling windows-sys v0.59.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:18.5821416Z Compiling serde_derive v1.0.228 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:18.5821898Z Compiling zeroize_derive v1.4.3 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:18.7881821Z Compiling zerofrom-derive v0.1.7 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:18.8974383Z Compiling yoke-derive v0.8.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:18.9754854Z Compiling tokio-macros v2.7.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:19.6988901Z Compiling futures-macro v0.3.32 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:19.7570449Z Compiling zerovec-derive v0.11.3 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:19.7878991Z Compiling displaydoc v0.2.6 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:19.8570362Z Compiling tracing-attributes v0.1.31 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:20.0572856Z Compiling thiserror-impl v2.0.18 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:20.2335662Z Compiling zeroize v1.8.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:20.3823170Z Compiling curve25519-dalek-derive v0.1.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:20.4212618Z Compiling darling_macro v0.20.11 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:20.4523600Z Compiling derive_more-impl v2.1.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:20.7567304Z Compiling tokio v1.52.3 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:20.7567821Z Compiling rustls-pki-types v1.14.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:20.8197607Z Compiling windows-interface v0.59.3 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:20.8536935Z Compiling futures-util v0.3.32 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:21.0809782Z Compiling darling v0.20.11 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:21.1330736Z Compiling spez v0.1.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:21.2053162Z Compiling windows-implement v0.60.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:21.2179954Z Compiling n0-error-macros v0.1.3 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:21.3868146Z Compiling derive_builder_core v0.20.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:21.4568595Z Compiling zerofrom v0.1.8 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:21.7181185Z Compiling der v0.8.0-rc.10 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:21.7433501Z Compiling pin-project-internal v1.1.13 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:21.8764659Z Compiling yoke v0.8.3 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:21.9016454Z Compiling postcard-derive v0.2.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:22.0489232Z Compiling data-encoding-macro-internal v0.1.18 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:22.2028246Z Compiling windows-core v0.62.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:22.3498069Z Compiling zerovec v0.11.6 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:22.4894520Z Compiling zerotrie v0.2.4 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:22.5400523Z Compiling n0-error v0.1.3 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:22.7308339Z Compiling cobs v0.3.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:22.7632461Z Compiling data-encoding-macro v0.1.20 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:22.9807478Z Compiling derive_builder_macro v0.20.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:23.0187317Z Compiling spki v0.8.0-rc.4 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:23.0760994Z Compiling ed25519-dalek v2.2.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:23.0881210Z Compiling windows-numerics v0.3.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:23.1714579Z Compiling tinystr v0.8.3 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:23.2539933Z Compiling potential_utf v0.1.5 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:23.3109133Z Compiling pkcs8 v0.11.0-rc.10 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:23.3520984Z 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-21T09:42:23.3704403Z Compiling icu_collections v2.2.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:23.4206375Z Compiling icu_locale_core v2.2.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:23.4892344Z Compiling pin-project v1.1.13 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:23.4893393Z Compiling windows-future v0.3.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:23.5140529Z Compiling derive_builder v0.20.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:23.5822036Z Compiling windows-collections v0.3.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:23.6302770Z Compiling num_enum_derive v0.7.6 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:23.8479599Z Compiling iroh-metrics-derive v0.4.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:23.9690284Z Compiling enum-assoc v1.3.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:24.1404102Z Compiling futures-executor v0.3.32 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:24.2813570Z Compiling ipnet v2.12.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:24.3443265Z Compiling futures v0.3.32 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:24.4097063Z Compiling icu_provider v2.2.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:24.4097765Z Compiling ed25519 v3.0.0-rc.4 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:24.5051957Z Compiling chrono v0.4.45 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:24.6670609Z Compiling prefix-trie v0.8.4 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:24.9128603Z Compiling once_cell v1.21.4 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:24.9988209Z Compiling icu_normalizer v2.2.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:25.0953122Z Compiling icu_properties v2.2.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:25.1762563Z Compiling windows v0.62.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:25.2160822Z Compiling tracing-core v0.1.36 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:25.3575746Z Compiling postcard v1.1.3 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:25.3804703Z Compiling derive_more v2.1.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:25.4013537Z Compiling strum_macros v0.28.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:25.4183465Z Compiling async-trait v0.1.89 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:25.5325339Z Compiling tokio-util v0.7.18 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:25.5514649Z Compiling tower v0.5.3 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:25.6519813Z Compiling tracing v0.1.44 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:25.8772715Z Compiling hashbrown v0.14.5 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:26.1339745Z Compiling ed25519-dalek v3.0.0-pre.6 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:26.2730717Z Compiling h2 v0.4.14 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:26.3565308Z Compiling crossbeam-channel v0.5.15 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:26.6282483Z Compiling idna_adapter v1.2.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:26.6322552Z Compiling hashlink v0.9.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:26.7153979Z Compiling crossbeam-epoch v0.9.18 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:26.7202492Z Compiling idna v1.1.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:26.7382177Z Compiling blake3 v1.8.5 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:26.7852941Z Compiling windows-registry v0.6.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:26.8136406Z Compiling uuid v1.23.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:26.8451561Z Compiling memoffset v0.6.5 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:26.9051125Z Compiling acto v0.8.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:27.0842546Z Compiling url v2.5.8 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:27.0843181Z Compiling rusqlite v0.32.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:27.1752581Z Compiling netwatch v0.16.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:27.2286364Z Compiling noq v0.18.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:27.2387490Z Compiling tagptr v0.2.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:27.2700134Z Compiling thiserror v1.0.69 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:27.3195150Z Compiling foldhash v0.2.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:27.3467785Z Compiling mac-addr v0.3.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:27.4765622Z Compiling sorted-index-buffer v0.2.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:27.4795060Z Compiling lru-slab v0.1.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:27.5246619Z Compiling rustc-hash v2.1.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:27.6389368Z Compiling identity-hash v0.1.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:27.6420140Z Compiling xml-rs v0.8.28 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:27.6556427Z Compiling ref-cast v1.0.25 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:27.7494326Z Compiling hickory-proto v0.26.0-beta.4 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:27.7494788Z Compiling iroh-base v0.98.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:27.7672387Z Compiling attohttpc v0.30.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:27.8138202Z Compiling tower-http v0.6.11 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:27.9643111Z Compiling netdev v0.42.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:28.0961728Z 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-21T09:42:28.1643504Z Compiling hashbrown v0.16.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:28.2944140Z Compiling strum v0.28.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:28.3325582Z Compiling xmltree v0.10.3 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:28.4102246Z Compiling moka v0.12.15 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:28.8652356Z Compiling n0-watcher v0.6.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:28.9210291Z Compiling tokio-stream v0.1.18 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:28.9813400Z Compiling iroh-metrics v0.38.3 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:29.0315228Z Compiling iroh-relay v0.98.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:29.1836443Z Compiling num_enum v0.7.6 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:29.2692844Z Compiling serde_spanned v0.6.9 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:29.3959056Z Compiling toml_datetime v0.6.11 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:29.5382384Z Compiling thiserror-impl v1.0.69 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:29.5903317Z Compiling ref-cast-impl v1.0.25 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:29.5963724Z Compiling serde_derive_internals v0.29.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:29.7143507Z Compiling simple-dns v0.9.3 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:29.7361081Z Compiling serial-core v0.4.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:29.8430521Z Compiling aho-corasick v1.1.4 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:29.8737636Z Compiling winreg v0.10.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:29.9786294Z Compiling arrayvec v0.7.6 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:30.0116709Z Compiling smol_str v0.1.24 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:30.2517097Z Compiling sha1_smol v1.0.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:30.3193578Z Compiling toml_write v0.1.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:30.3335784Z Compiling arrayref v0.3.9 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:30.3562224Z Compiling resolv-conf v0.7.6 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:30.4272324Z 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-21T09:42:30.4660366Z Compiling simdutf8 v0.1.5 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:30.5964901Z Compiling regex-syntax v0.8.10 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:30.6497927Z Compiling hyper v1.10.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:30.6679596Z Compiling constant_time_eq v0.4.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:30.7420312Z Compiling winnow v0.7.15 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:30.9722514Z Compiling iroh-dns v0.98.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:31.1322091Z Compiling schemars_derive v1.2.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:31.6882905Z Compiling serial-windows v0.4.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:31.9564165Z Compiling lru v0.16.4 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:31.9981425Z Compiling webpki-roots v1.0.7 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:32.0838705Z Compiling hyper-util v0.1.20 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:32.2255163Z Compiling seize v0.5.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:32.2733998Z Compiling darling_core v0.23.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:32.3206535Z Compiling serde_bytes v0.11.19 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:32.7232901Z Compiling regex-automata v0.4.14 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:32.7562940Z Compiling toml_edit v0.22.27 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:32.8791401Z Compiling hmac v0.12.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:32.8799824Z Compiling iroh v0.98.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:33.0623303Z Compiling utf8parse v0.2.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:33.1470854Z Compiling cmov v0.5.4 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:33.2019454Z Compiling once_cell_polyfill v1.70.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:33.3093675Z Compiling pin-utils v0.1.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:33.3189273Z Compiling lazy_static v1.5.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:33.4055089Z Compiling dyn-clone v1.0.20 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:33.4182663Z Compiling anstyle v1.0.14 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:33.4288102Z Compiling bitflags v1.3.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:33.4312016Z Compiling shared_library v0.1.9 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:33.4777511Z Compiling ctutils v0.4.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:33.5693816Z Compiling nix v0.25.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:33.5995903Z Compiling schemars v1.2.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:33.6540180Z Compiling igd-next v0.17.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:33.6668913Z Compiling anstyle-wincon v3.0.11 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:33.6756120Z Compiling anstyle-parse v1.0.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:33.7203742Z Compiling hkdf v0.12.4 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:33.7999430Z Compiling papaya v0.2.4 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:33.8356303Z Compiling swarm-discovery v0.6.0-alpha.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:33.8651386Z Compiling serial v0.4.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:33.9265627Z Compiling filedescriptor v0.8.3 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:34.0408453Z Compiling backon v1.6.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:34.1323567Z Compiling anstyle-query v1.1.5 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:34.3388194Z Compiling foldhash v0.1.5 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:34.3594014Z Compiling shell-words v1.1.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:34.3691688Z Compiling instability v0.3.12 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:34.4187983Z Compiling is_terminal_polyfill v1.70.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:34.5973643Z Compiling downcast-rs v1.2.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:34.6552654Z Compiling paste v1.0.15 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:34.6709177Z Compiling colorchoice v1.0.5 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:34.7842034Z Compiling anstream v1.0.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:34.7917728Z Compiling portable-pty v0.8.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:34.8827708Z Compiling hashbrown v0.15.5 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:34.8950712Z Compiling spake2 v0.4.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:34.9504565Z Compiling toml v0.8.23 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:35.2767369Z Compiling regex v1.12.3 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:35.2808331Z Compiling strum_macros v0.26.4 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:35.3871488Z Compiling terminal_size v0.4.4 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:35.4096649Z Compiling crossterm_winapi v0.9.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:35.6210003Z Compiling itertools v0.13.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:35.6659656Z 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-21T09:42:35.8997014Z Compiling sha1 v0.10.6 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:36.0120469Z Compiling wmi v0.18.4 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:36.1595627Z Compiling darling_macro v0.23.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:36.1741359Z Compiling castaway v0.2.4 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:36.2105632Z Compiling clap_lex v1.1.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:36.3439575Z Compiling unicode-width v0.1.14 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:36.4614331Z Compiling recvmsg v1.0.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:36.6539654Z Compiling doctest-file v1.1.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:36.7395211Z Compiling darling v0.23.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:36.7494468Z Compiling static_assertions v1.1.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:36.9034952Z Compiling indoc v2.0.7 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:36.9396395Z Compiling compact_str v0.8.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:37.0716298Z Compiling clap_builder v4.6.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:37.4703303Z Compiling unicode-truncate v1.1.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:37.5935086Z Compiling interprocess v2.4.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:37.6723648Z Compiling crossterm v0.28.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:37.7595834Z Compiling portmapper v0.16.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:37.8595667Z Compiling strum v0.26.3 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:38.1189831Z Compiling lru v0.12.5 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:38.3377535Z 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-21T09:42:38.5695781Z 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-21T09:42:38.8510891Z Compiling clap_derive v4.6.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:38.9522394Z Compiling error-code v3.3.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:39.1416179Z Compiling unicode-width v0.2.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:39.1521026Z Compiling cassowary v0.3.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:39.2979638Z Compiling clipboard-win v5.4.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:39.3764109Z Compiling nucleo-matcher v0.3.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:39.3963863Z Compiling qrcode v0.14.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:39.5227520Z Compiling ratatui v0.29.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:40.0326833Z Compiling tempfile v3.27.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:41.0675410Z Compiling clap v4.6.1 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:53.0685428Z Compiling rustls-webpki v0.103.13 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:55.5251938Z Compiling tokio-rustls v0.26.4 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:55.5252302Z Compiling rustls-platform-verifier v0.7.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:55.5252583Z Compiling noq-proto v0.17.0 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:55.8202242Z Compiling hickory-net v0.26.0-beta.4 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:55.8203109Z Compiling hyper-rustls v0.27.9 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:55.8203526Z Compiling tokio-websockets v0.13.2 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:56.0268160Z Compiling reqwest v0.13.4 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:42:57.0234929Z Compiling hickory-resolver v0.26.0-beta.4 n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:43:14.6277940Z 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-21T09:43:16.0240487Z 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-21T09:43:25.3610822Z 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-21T09:43:32.6756730Z Finished `test` profile [unoptimized + debuginfo] target(s) in 1m 24s n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:43:32.6978029Z 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-21T09:43:32.7488225Z n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:43:32.7488559Z running 1 test n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:43:39.9962155Z test new_brain_serves_against_old_broker ... ok n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:43:39.9962395Z n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:43:39.9962612Z test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 7.25s n1-gate (self-hosted, Windows, hfenduleam) N-1 gate (new-brain × old-broker) — windows 2026-06-21T09:43:39.9962872Z n1-gate (self-hosted, Windows, hfenduleam) Post Run actions/checkout@v5 2026-06-21T09:43:40.0518074Z Post job cleanup. n1-gate (self-hosted, Windows, hfenduleam) Post Run actions/checkout@v5 2026-06-21T09:43:40.1528643Z [command]"c:\program files\git\cmd\git.exe" version n1-gate (self-hosted, Windows, hfenduleam) Post Run actions/checkout@v5 2026-06-21T09:43:40.1750720Z git version 2.43.0.windows.1 n1-gate (self-hosted, Windows, hfenduleam) Post Run actions/checkout@v5 2026-06-21T09:43:40.1784729Z Copying 'C:\Users\decid\.gitconfig' to 'C:\actions-runner\_work\_temp\9778a34b-bbc0-412d-9735-fc3b09b4739e\.gitconfig' n1-gate (self-hosted, Windows, hfenduleam) Post Run actions/checkout@v5 2026-06-21T09:43:40.1799957Z Temporarily overriding HOME='C:\actions-runner\_work\_temp\9778a34b-bbc0-412d-9735-fc3b09b4739e' before making global git config changes n1-gate (self-hosted, Windows, hfenduleam) Post Run actions/checkout@v5 2026-06-21T09:43:40.1801062Z 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-21T09:43:40.1806813Z [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-21T09:43:40.2048995Z [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-21T09:43:40.2266651Z [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-21T09:43:40.5939896Z [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-21T09:43:40.6146283Z http.https://github.com/.extraheader n1-gate (self-hosted, Windows, hfenduleam) Post Run actions/checkout@v5 2026-06-21T09:43:40.6175475Z [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-21T09:43:40.6421478Z [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-21T09:43:41.0373166Z [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-21T09:43:41.0718402Z [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-21T09:43:41.4468755Z Cleaning up orphan processes test (self-hosted, Windows, hfenduleam) Set up job 2026-06-21T09:43:45.4175730Z Current runner version: '2.335.1' test (self-hosted, Windows, hfenduleam) Set up job 2026-06-21T09:43:45.4183855Z Runner name: 'hfenduleam' test (self-hosted, Windows, hfenduleam) Set up job 2026-06-21T09:43:45.4184346Z Runner group name: 'Default' test (self-hosted, Windows, hfenduleam) Set up job 2026-06-21T09:43:45.4184808Z Machine name: 'HFENDULEAM' test (self-hosted, Windows, hfenduleam) Set up job 2026-06-21T09:43:45.4186826Z ##[group]GITHUB_TOKEN Permissions test (self-hosted, Windows, hfenduleam) Set up job 2026-06-21T09:43:45.4188235Z Contents: read test (self-hosted, Windows, hfenduleam) Set up job 2026-06-21T09:43:45.4188593Z Metadata: read test (self-hosted, Windows, hfenduleam) Set up job 2026-06-21T09:43:45.4188968Z Packages: read test (self-hosted, Windows, hfenduleam) Set up job 2026-06-21T09:43:45.4189284Z ##[endgroup] test (self-hosted, Windows, hfenduleam) Set up job 2026-06-21T09:43:45.4190593Z Secret source: Actions test (self-hosted, Windows, hfenduleam) Set up job 2026-06-21T09:43:45.4191027Z Prepare workflow directory test (self-hosted, Windows, hfenduleam) Set up job 2026-06-21T09:43:45.4504776Z Prepare all required actions test (self-hosted, Windows, hfenduleam) Set up job 2026-06-21T09:43:45.4529751Z Getting action download info test (self-hosted, Windows, hfenduleam) Set up job 2026-06-21T09:43:45.7365664Z Download action repository 'actions/checkout@v5' (SHA:93cb6efe18208431cddfb8368fd83d5badbf9bfd) test (self-hosted, Windows, hfenduleam) Set up job 2026-06-21T09:43:46.3593598Z Complete job name: test (self-hosted, Windows, hfenduleam) test (self-hosted, Windows, hfenduleam) Reap stray workspace daemons (pre-checkout exe-lock guard) 2026-06-21T09:43:46.4368558Z ##[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-21T09:43:46.4370177Z Get-Process spt,notify-shell -ErrorAction SilentlyContinue | test (self-hosted, Windows, hfenduleam) Reap stray workspace daemons (pre-checkout exe-lock guard) 2026-06-21T09:43:46.4370812Z  Where-Object { $_.Path -like "$env:GITHUB_WORKSPACE\*" } | test (self-hosted, Windows, hfenduleam) Reap stray workspace daemons (pre-checkout exe-lock guard) 2026-06-21T09:43:46.4371354Z  Stop-Process -Force -ErrorAction SilentlyContinue test (self-hosted, Windows, hfenduleam) Reap stray workspace daemons (pre-checkout exe-lock guard) 2026-06-21T09:43:46.4371793Z exit 0 test (self-hosted, Windows, hfenduleam) Reap stray workspace daemons (pre-checkout exe-lock guard) 2026-06-21T09:43:46.4445508Z 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-21T09:43:46.4446205Z env: test (self-hosted, Windows, hfenduleam) Reap stray workspace daemons (pre-checkout exe-lock guard) 2026-06-21T09:43:46.4446522Z SPT_REGISTRY_BUSY_TIMEOUT_MS: 30000 test (self-hosted, Windows, hfenduleam) Reap stray workspace daemons (pre-checkout exe-lock guard) 2026-06-21T09:43:46.4446919Z ##[endgroup] test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:43:46.7942132Z ##[group]Run actions/checkout@v5 test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:43:46.7942609Z with: test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:43:46.7943007Z repository: SaberMage/spt-core test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:43:46.7947895Z token: *** test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:43:46.7948237Z ssh-strict: true test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:43:46.7948535Z ssh-user: git test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:43:46.7948832Z persist-credentials: true test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:43:46.7949177Z clean: true test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:43:46.7949476Z sparse-checkout-cone-mode: true test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:43:46.7949836Z fetch-depth: 1 test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:43:46.7950188Z fetch-tags: false test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:43:46.7950487Z show-progress: true test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:43:46.7950809Z lfs: false test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:43:46.7951084Z submodules: false test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:43:46.7951383Z set-safe-directory: true test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:43:46.7951701Z env: test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:43:46.7951987Z SPT_REGISTRY_BUSY_TIMEOUT_MS: 30000 test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:43:46.7952346Z ##[endgroup] test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:43:46.9931489Z Syncing repository: SaberMage/spt-core test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:43:46.9932831Z ##[group]Getting Git version info test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:43:46.9933467Z Working directory is 'C:\actions-runner\_work\spt-core\spt-core' test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:43:47.0227217Z [command]"c:\program files\git\cmd\git.exe" version test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:43:47.0465401Z git version 2.43.0.windows.1 test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:43:47.0498980Z ##[endgroup] test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:43:47.0507479Z Copying 'C:\Users\decid\.gitconfig' to 'C:\actions-runner\_work\_temp\fd8f152a-0852-4b34-a659-d9351d669a76\.gitconfig' test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:43:47.0523126Z Temporarily overriding HOME='C:\actions-runner\_work\_temp\fd8f152a-0852-4b34-a659-d9351d669a76' before making global git config changes test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:43:47.0524127Z Adding repository directory to the temporary git global config as a safe directory test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:43:47.0528598Z [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-21T09:43:47.0799948Z [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-21T09:43:47.1007877Z https://github.com/SaberMage/spt-core test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:43:47.1038163Z ##[group]Removing previously created refs, to avoid conflicts test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:43:47.1042658Z [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-21T09:43:47.1241041Z HEAD test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:43:47.1490172Z ##[endgroup] test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:43:47.1493715Z [command]"c:\program files\git\cmd\git.exe" submodule status test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:43:47.5808868Z ##[group]Cleaning the repository test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:43:47.5813287Z [command]"c:\program files\git\cmd\git.exe" clean -ffdx test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:43:49.6622089Z Removing target/ test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:43:49.6666429Z [command]"c:\program files\git\cmd\git.exe" reset --hard HEAD test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:43:49.7081162Z HEAD is now at 1cafc8a Merge 6a27b0b9a2658ec5039ce38b939c6bfdad2757fa into 86f20ac831033a20bd5e096b1c318a75249179f3 test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:43:49.7107527Z ##[endgroup] test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:43:49.7111367Z ##[group]Disabling automatic garbage collection test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:43:49.7116125Z [command]"c:\program files\git\cmd\git.exe" config --local gc.auto 0 test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:43:49.7367141Z ##[endgroup] test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:43:49.7367581Z ##[group]Setting up auth test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:43:49.7376289Z [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-21T09:43:49.7601464Z [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-21T09:43:50.1352824Z [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-21T09:43:50.1601500Z [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-21T09:43:50.5425315Z [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-21T09:43:50.5659747Z [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-21T09:43:50.9293875Z [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-21T09:43:50.9551166Z ##[endgroup] test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:43:50.9551722Z ##[group]Fetching the repository test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:43:50.9558730Z [command]"c:\program files\git\cmd\git.exe" -c protocol.version=2 fetch --no-tags --prune --no-recurse-submodules --depth=1 origin +1cafc8afb1ed6606350cab07e057989c02fea0c7:refs/remotes/pull/27/merge test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:43:51.5716770Z ##[endgroup] test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:43:51.5717205Z ##[group]Determining the checkout info test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:43:51.5717822Z ##[endgroup] test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:43:51.5723485Z [command]"c:\program files\git\cmd\git.exe" sparse-checkout disable test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:43:51.6005981Z [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-21T09:43:51.6247717Z ##[group]Checking out the ref test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:43:51.6252494Z [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-21T09:43:51.6607862Z HEAD is now at 1cafc8a Merge 6a27b0b9a2658ec5039ce38b939c6bfdad2757fa into 86f20ac831033a20bd5e096b1c318a75249179f3 test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:43:51.6636763Z ##[endgroup] test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:43:51.6917490Z [command]"c:\program files\git\cmd\git.exe" log -1 --format=%H test (self-hosted, Windows, hfenduleam) Run actions/checkout@v5 2026-06-21T09:43:51.7134547Z 1cafc8afb1ed6606350cab07e057989c02fea0c7 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:51.7396707Z ##[group]Run cargo nextest run -p spt-daemon --no-run test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:51.7397144Z cargo nextest run -p spt-daemon --no-run test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:51.7467244Z shell: C:\Program Files\PowerShell\7\pwsh.EXE -command ". '{0}'" test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:51.7467569Z env: test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:51.7467758Z SPT_REGISTRY_BUSY_TIMEOUT_MS: 30000 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:51.7468002Z ##[endgroup] test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:53.1141276Z Compiling proc-macro2 v1.0.106 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:53.1141712Z Compiling quote v1.0.45 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:53.1141941Z Compiling unicode-ident v1.0.24 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:53.1142152Z Compiling serde_core v1.0.228 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:53.1142383Z Compiling serde v1.0.228 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:53.1142585Z Compiling cfg-if v1.0.4 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:53.1142807Z Compiling windows-link v0.2.1 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:53.1143667Z Compiling portable-atomic v1.13.1 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:53.1143885Z Compiling typenum v1.20.1 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:53.1144110Z Compiling pin-project-lite v0.2.17 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:53.1144400Z Compiling version_check v0.9.5 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:53.1144677Z Compiling critical-section v1.2.0 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:53.1144997Z Compiling memchr v2.8.1 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:53.1145276Z Compiling subtle v2.6.1 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:53.1145755Z Compiling futures-core v0.3.32 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:53.1146133Z Compiling bytes v1.11.1 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:53.1886248Z Compiling windows-sys v0.61.2 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:53.2047884Z Compiling shlex v2.0.1 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:53.2344307Z Compiling find-msvc-tools v0.1.9 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:53.2719336Z Compiling smallvec v1.15.1 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:53.2722142Z Compiling semver v1.0.28 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:54.7863864Z Compiling equivalent v1.0.2 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:54.8081557Z Compiling itoa v1.0.18 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:54.9260118Z Compiling cc v1.2.63 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:54.9359323Z Compiling rustc_version v0.4.1 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:54.9714278Z Compiling generic-array v0.14.7 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:54.9884432Z Compiling stable_deref_trait v1.2.1 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:55.1508970Z Compiling log v0.4.32 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:55.2167040Z Compiling futures-io v0.3.32 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:55.2310392Z Compiling slab v0.4.12 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:55.2408858Z Compiling futures-sink v0.3.32 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:55.2941912Z Compiling futures-task v0.3.32 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:55.3433389Z Compiling hashbrown v0.17.1 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:55.3705748Z Compiling getrandom v0.2.17 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:55.3769155Z Compiling cpufeatures v0.2.17 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:55.4257984Z Compiling fnv v1.0.7 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:55.4284437Z Compiling libc v0.2.186 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:55.5067309Z Compiling futures-channel v0.3.32 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:55.5325172Z Compiling cfg_aliases v0.2.1 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:55.6094584Z Compiling rand_core v0.10.1 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:55.6095167Z Compiling writeable v0.6.3 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:55.6188232Z Compiling rustversion v1.0.22 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:55.6235597Z Compiling litemap v0.8.2 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:55.6319471Z Compiling autocfg v1.5.1 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:55.6505022Z Compiling utf8_iter v1.0.4 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:55.7028714Z Compiling icu_properties_data v2.2.0 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:55.7147780Z Compiling getrandom v0.4.2 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:55.8206197Z Compiling icu_normalizer_data v2.2.0 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:55.8270294Z Compiling percent-encoding v2.3.2 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:55.8986278Z Compiling http v1.4.1 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:55.9092066Z Compiling cpufeatures v0.3.0 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:55.9603498Z Compiling thiserror v2.0.18 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:56.0762895Z Compiling indexmap v2.14.0 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:56.1662804Z Compiling form_urlencoded v1.2.2 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:56.1903756Z Compiling syn v2.0.117 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:56.2991568Z Compiling chacha20 v0.10.0 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:56.3664667Z Compiling untrusted v0.9.0 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:56.3819274Z Compiling crypto-common v0.1.7 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:56.4391318Z Compiling block-buffer v0.10.4 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:56.6151144Z Compiling ring v0.17.14 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:56.7218187Z Compiling ident_case v1.0.1 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:56.7263136Z Compiling strsim v0.11.1 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:56.7320140Z Compiling rand v0.10.1 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:56.7348286Z Compiling digest v0.10.7 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:56.7348979Z Compiling num-traits v0.2.19 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:56.7540942Z Compiling windows-result v0.4.1 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:56.7735666Z Compiling windows-strings v0.5.1 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:56.7736290Z Compiling scopeguard v1.2.0 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:56.8669914Z Compiling rustls v0.23.40 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:56.9077523Z Compiling unicode-segmentation v1.13.3 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:56.9385497Z Compiling lock_api v0.4.14 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:56.9550063Z Compiling bitflags v2.12.1 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:57.0549959Z Compiling anyhow v1.0.102 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:57.2084592Z Compiling unicode-xid v0.2.6 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:57.2982559Z Compiling atomic-waker v1.1.2 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:57.2983098Z Compiling const-oid v0.10.2 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:57.3282892Z Compiling winapi v0.3.9 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:57.3731249Z Compiling httparse v1.10.1 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:57.3861035Z Compiling zerocopy v0.8.50 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:57.4058112Z Compiling http-body v1.0.1 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:57.4561612Z Compiling convert_case v0.10.0 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:57.5183309Z Compiling hybrid-array v0.4.12 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:57.5262852Z Compiling curve25519-dalek v4.1.3 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:57.5573694Z Compiling ahash v0.8.12 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:57.5691454Z Compiling fastrand v2.4.1 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:57.5943060Z Compiling powerfmt v0.2.0 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:57.7656314Z Compiling base64ct v1.8.3 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:57.8839713Z Compiling deranged v0.5.8 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:57.8851680Z Compiling rand_core v0.6.4 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:57.9362967Z Compiling try-lock v0.2.5 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:58.0933923Z Compiling pem-rfc7468 v1.0.0 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:58.1249980Z Compiling vcpkg v0.2.15 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:58.1389098Z Compiling pkg-config v0.3.33 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:58.1873852Z Compiling parking_lot_core v0.9.12 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:58.1925837Z Compiling time-core v0.1.8 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:58.3102877Z Compiling zmij v1.0.21 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:58.3870303Z Compiling tinyvec_macros v0.1.1 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:58.4133960Z Compiling data-encoding v2.11.0 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:58.5022722Z Compiling base64 v0.22.1 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:58.5276242Z Compiling num-conv v0.2.2 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:58.6088191Z Compiling tower-service v0.3.3 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:58.7300295Z Compiling tinyvec v1.11.0 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:58.7338619Z Compiling crypto-common v0.2.2 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:58.8680278Z Compiling block-buffer v0.12.0 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:58.9212143Z Compiling want v0.3.1 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:58.9519430Z Compiling vergen-lib v9.1.0 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:58.9791334Z Compiling sha2 v0.10.9 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:59.0261825Z Compiling inout v0.1.4 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:59.1796777Z Compiling n0-future v0.3.2 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:59.2052845Z Compiling serde_json v1.0.150 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:59.2518419Z Compiling cordyceps v0.3.4 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:59.2684005Z Compiling httpdate v1.0.3 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:59.3367001Z Compiling spin v0.10.0 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:59.3474272Z Compiling signature v2.2.0 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:59.4183136Z Compiling winnow v1.0.3 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:59.4672514Z Compiling heck v0.5.0 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:59.5215852Z Compiling crossbeam-utils v0.8.21 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:59.5463025Z Compiling parking v2.2.1 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:59.5804410Z Compiling libsqlite3-sys v0.30.1 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:59.6044354Z Compiling windows_x86_64_msvc v0.52.6 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:59.6293388Z Compiling diatomic-waker v0.2.3 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:59.6823844Z Compiling futures-lite v2.6.1 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:59.7631727Z Compiling futures-buffered v0.2.13 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:59.8017305Z Compiling digest v0.11.3 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:59.8573662Z Compiling ed25519 v2.2.3 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:59.9492533Z Compiling cipher v0.4.4 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:00.1473143Z Compiling vergen-lib v0.1.6 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:00.1607573Z Compiling vergen v9.1.0 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:00.2271264Z Compiling universal-hash v0.5.1 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:00.2484898Z Compiling noq-udp v0.10.0 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:00.2591026Z Compiling curve25519-dalek v5.0.0-pre.6 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:00.4594848Z Compiling synstructure v0.13.2 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:00.4676652Z Compiling darling_core v0.20.11 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:00.5718597Z Compiling heapless v0.7.17 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:00.6155499Z Compiling sync_wrapper v1.0.2 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:00.6268124Z Compiling byteorder v1.5.0 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:00.6314194Z Compiling opaque-debug v0.3.1 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:00.7552119Z Compiling toml_datetime v1.1.1+spec-1.1.0 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:00.7793219Z Compiling either v1.16.0 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:00.8183692Z Compiling polyval v0.6.2 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:00.9136548Z Compiling toml_parser v1.1.2+spec-1.1.0 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:00.9824459Z Compiling hash32 v0.2.1 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:01.6616621Z Compiling toml_edit v0.25.12+spec-1.1.0 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:01.6884725Z Compiling parking_lot v0.12.5 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:01.7667164Z Compiling vergen-gitcl v1.0.8 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:01.8147783Z Compiling spin v0.9.8 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:01.8338109Z Compiling windows-threading v0.2.1 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:01.9039435Z Compiling tower-layer v0.3.3 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:01.9538554Z Compiling fallible-iterator v0.3.0 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:02.0569308Z Compiling fallible-streaming-iterator v0.1.9 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:02.0876027Z Compiling signature v3.0.0 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:02.1786812Z Compiling windows-targets v0.52.6 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:02.2689629Z Compiling ghash v0.5.1 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:02.2716787Z Compiling fs2 v0.4.3 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:02.2860178Z Compiling ctr v0.9.2 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:02.3162084Z Compiling aes v0.8.4 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:02.3743268Z Compiling proc-macro-crate v3.5.0 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:02.4237204Z Compiling sha2 v0.11.0-rc.5 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:02.4258425Z Compiling time v0.3.47 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:02.4518397Z Compiling http-body-util v0.1.3 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:02.4966549Z Compiling aead v0.5.2 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:02.5591120Z Compiling widestring v1.2.1 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:02.7347332Z Compiling ipconfig v0.3.4 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:02.7835411Z Compiling windows-sys v0.59.0 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:02.8035175Z Compiling aes-gcm v0.10.3 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:03.0144029Z Compiling socket2 v0.6.4 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:03.0891596Z Compiling mio v1.2.1 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:03.1758729Z Compiling crossbeam-channel v0.5.15 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:03.1930199Z Compiling crossbeam-epoch v0.9.18 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:03.2322272Z Compiling windows-registry v0.6.1 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:03.3405390Z Compiling blake3 v1.8.5 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:03.7092297Z Compiling uuid v1.23.2 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:03.7263169Z Compiling memoffset v0.6.5 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:03.7333235Z Compiling noq v0.18.0 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:03.7547539Z Compiling netwatch v0.16.0 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:03.7674404Z Compiling serde_derive v1.0.228 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:03.7823011Z Compiling zeroize_derive v1.4.3 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:03.8543232Z Compiling zerofrom-derive v0.1.7 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:03.8737759Z Compiling yoke-derive v0.8.2 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:03.8873372Z Compiling tokio-macros v2.7.0 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:03.9347216Z Compiling futures-macro v0.3.32 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:04.0047272Z Compiling zerovec-derive v0.11.3 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:04.0660441Z Compiling displaydoc v0.2.6 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:04.1111144Z Compiling tracing-attributes v0.1.31 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:04.1773847Z Compiling curve25519-dalek-derive v0.1.1 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:04.1833046Z Compiling thiserror-impl v2.0.18 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:04.3770195Z Compiling darling_macro v0.20.11 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:04.4082396Z Compiling derive_more-impl v2.1.1 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:04.5760820Z Compiling windows-implement v0.60.2 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:04.8993799Z Compiling tokio v1.52.3 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:04.8994342Z Compiling zeroize v1.8.2 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:04.9324877Z Compiling spez v0.1.2 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:05.0489961Z Compiling n0-error-macros v0.1.3 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:05.0654054Z Compiling darling v0.20.11 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:05.0725423Z Compiling futures-util v0.3.32 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:05.2751857Z Compiling rustls-pki-types v1.14.1 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:05.3603181Z Compiling derive_builder_core v0.20.2 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:05.4072975Z Compiling windows-interface v0.59.3 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:05.4955853Z Compiling der v0.8.0-rc.10 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:05.5647448Z Compiling pin-project-internal v1.1.13 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:05.5648026Z Compiling data-encoding-macro-internal v0.1.18 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:05.7589849Z Compiling zerofrom v0.1.8 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:05.8202316Z Compiling rustls-webpki v0.103.13 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:06.1514755Z Compiling yoke v0.8.3 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:06.1516900Z Compiling postcard-derive v0.2.2 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:06.2240900Z Compiling async-trait v0.1.89 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:06.2579286Z Compiling n0-error v0.1.3 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:06.2776320Z Compiling data-encoding-macro v0.1.20 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:06.4716579Z Compiling cobs v0.3.0 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:06.5193628Z Compiling zerovec v0.11.6 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:06.6048276Z Compiling zerotrie v0.2.4 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:06.6188933Z Compiling windows-core v0.62.2 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:06.7597924Z Compiling spki v0.8.0-rc.4 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:06.8561114Z Compiling ed25519-dalek v2.2.0 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:06.8820746Z Compiling derive_builder_macro v0.20.2 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:07.0010044Z Compiling iroh-metrics-derive v0.4.1 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:07.1778617Z Compiling pkcs8 v0.11.0-rc.10 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:07.2284036Z Compiling spt-proto v0.12.1 (C:\actions-runner\_work\spt-core\spt-core\crates\spt-proto) test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:07.3407805Z Compiling tinystr v0.8.3 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:07.3696082Z Compiling potential_utf v0.1.5 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:07.4150261Z Compiling pin-project v1.1.13 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:07.5285266Z Compiling derive_builder v0.20.2 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:07.5285880Z Compiling windows-numerics v0.3.1 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:07.6437005Z Compiling icu_locale_core v2.2.0 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:07.6523007Z Compiling icu_collections v2.2.0 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:07.6922567Z Compiling windows-future v0.3.2 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:07.7329678Z Compiling windows-collections v0.3.2 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:07.7455752Z Compiling strum_macros v0.28.0 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:07.8780564Z Compiling num_enum_derive v0.7.6 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:07.9653792Z Compiling enum-assoc v1.3.0 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:08.1796089Z Compiling acto v0.8.2 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:08.2817660Z Compiling rustc-hash v2.1.2 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:08.2931400Z Compiling ref-cast v1.0.25 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:08.3338775Z Compiling windows v0.62.2 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:08.4170880Z Compiling xml-rs v0.8.28 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:08.4394946Z Compiling lru-slab v0.1.2 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:08.5329002Z Compiling futures-executor v0.3.32 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:08.6025339Z Compiling foldhash v0.2.0 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:08.6125902Z Compiling ryu v1.0.23 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:08.7785523Z Compiling icu_provider v2.2.0 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:08.8182077Z Compiling futures v0.3.32 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:08.8527680Z Compiling allocator-api2 v0.2.21 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:08.9060839Z Compiling sorted-index-buffer v0.2.1 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:08.9061353Z Compiling thiserror v1.0.69 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:08.9431603Z Compiling tagptr v0.2.0 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:09.0402709Z Compiling identity-hash v0.1.0 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:09.1147162Z Compiling icu_properties v2.2.0 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:09.2027422Z Compiling icu_normalizer v2.2.0 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:09.2027988Z Compiling ipnet v2.12.0 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:09.2480113Z Compiling ed25519 v3.0.0-rc.4 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:09.3021750Z Compiling chrono v0.4.45 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:09.3389284Z Compiling mac-addr v0.3.0 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:09.4977838Z Compiling derive_more v2.1.1 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:09.6099358Z Compiling once_cell v1.21.4 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:09.7006957Z Compiling tokio-util v0.7.18 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:09.7774039Z Compiling prefix-trie v0.8.4 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:09.8413702Z Compiling tracing-core v0.1.36 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:10.0292660Z Compiling postcard v1.1.3 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:10.3100411Z Compiling tower v0.5.3 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:10.3425849Z Compiling tracing v0.1.44 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:10.3426350Z Compiling hashbrown v0.14.5 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:10.4398133Z Compiling ed25519-dalek v3.0.0-pre.6 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:10.6728666Z Compiling idna_adapter v1.2.2 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:10.6982444Z Compiling n0-watcher v0.6.1 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:10.7970603Z Compiling idna v1.1.0 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:10.8623577Z Compiling h2 v0.4.14 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:10.8796732Z Compiling strum v0.28.0 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:10.8903156Z Compiling iroh-metrics v0.38.3 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:10.9791776Z Compiling hashlink v0.9.1 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:11.0455082Z Compiling tokio-stream v0.1.18 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:11.0455613Z Compiling moka v0.12.15 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:11.0857295Z Compiling netdev v0.42.0 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:11.1800898Z Compiling url v2.5.8 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:11.2520010Z Compiling num_enum v0.7.6 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:11.3055192Z Compiling rusqlite v0.32.1 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:11.3056972Z Compiling hashbrown v0.16.1 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:11.3695487Z Compiling xmltree v0.10.3 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:11.4879885Z Compiling iroh-relay v0.98.0 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:11.6496616Z Compiling serde_spanned v0.6.9 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:11.6925047Z Compiling toml_datetime v0.6.11 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:11.8754957Z Compiling hickory-proto v0.26.0-beta.4 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:11.9484560Z Compiling iroh-base v0.98.0 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:12.0101123Z Compiling attohttpc v0.30.1 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:12.1099019Z Compiling tower-http v0.6.11 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:12.2315373Z Compiling ref-cast-impl v1.0.25 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:12.2377257Z Compiling thiserror-impl v1.0.69 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:12.3756482Z Compiling serde_derive_internals v0.29.1 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:12.4985278Z Compiling spt-store v0.12.1 (C:\actions-runner\_work\spt-core\spt-core\crates\spt-store) test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:12.7194999Z Compiling simple-dns v0.9.3 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:12.8318532Z Compiling serial-core v0.4.0 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:12.9839518Z Compiling aho-corasick v1.1.4 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:13.0708078Z Compiling winnow v0.7.15 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:13.1006258Z Compiling toml_write v0.1.2 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:13.3490536Z Compiling smol_str v0.1.24 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:13.3685773Z Compiling arrayvec v0.7.6 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:13.3695973Z Compiling constant_time_eq v0.4.2 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:14.1008073Z Compiling tokio-rustls v0.26.4 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:14.1008776Z Compiling rustls-platform-verifier v0.7.0 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:14.1023959Z Compiling noq-proto v0.17.0 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:14.2344329Z Compiling regex-syntax v0.8.10 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:14.4936534Z Compiling resolv-conf v0.7.6 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:14.5256089Z Compiling winreg v0.10.1 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:14.5281345Z Compiling sha1_smol v1.0.1 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:14.6285861Z Compiling spt-msg v0.12.1 (C:\actions-runner\_work\spt-core\spt-core\crates\spt-msg) test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:14.6286548Z Compiling arrayref v0.3.9 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:14.7811439Z Compiling hyper v1.10.1 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:14.8541431Z Compiling hickory-net v0.26.0-beta.4 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:14.9039478Z Compiling simdutf8 v0.1.5 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:15.1593735Z Compiling tokio-websockets v0.13.2 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:15.2779746Z Compiling toml_edit v0.22.27 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:15.4704448Z Compiling schemars_derive v1.2.1 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:15.9857998Z Compiling iroh-dns v0.98.0 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:16.4233607Z Compiling hyper-util v0.1.20 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:16.7308867Z Compiling hickory-resolver v0.26.0-beta.4 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:16.7626011Z Compiling regex-automata v0.4.14 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:17.0851495Z Compiling serial-windows v0.4.0 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:17.5314251Z Compiling lru v0.16.4 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:17.6260343Z Compiling webpki-roots v1.0.7 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:17.7287635Z Compiling seize v0.5.1 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:17.7965135Z Compiling serde_bytes v0.11.19 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:17.8339174Z Compiling hmac v0.12.1 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:17.9271462Z Compiling iroh v0.98.2 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:18.0606994Z Compiling hyper-rustls v0.27.9 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:18.1019736Z Compiling igd-next v0.17.1 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:18.1562309Z Compiling pin-utils v0.1.0 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:18.1562741Z Compiling cmov v0.5.4 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:18.3389153Z Compiling lazy_static v1.5.0 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:18.3929435Z Compiling reqwest v0.13.4 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:18.4944668Z Compiling dyn-clone v1.0.20 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:18.4951735Z Compiling bitflags v1.3.2 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:18.5558599Z Compiling ctutils v0.4.2 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:18.6435320Z Compiling schemars v1.2.1 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:18.6435781Z Compiling nix v0.25.1 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:18.7137809Z Compiling shared_library v0.1.9 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:18.7686681Z Compiling hkdf v0.12.4 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:18.8193851Z Compiling papaya v0.2.4 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:18.8801771Z Compiling serial v0.4.0 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:18.9927718Z Compiling toml v0.8.23 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:19.0268120Z Compiling swarm-discovery v0.6.0-alpha.2 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:19.0789687Z Compiling filedescriptor v0.8.3 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:19.2807770Z Compiling wmi v0.18.4 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:19.4497808Z Compiling regex v1.12.3 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:19.4640467Z Compiling backon v1.6.0 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:19.9249424Z Compiling shell-words v1.1.1 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:20.1642429Z Compiling downcast-rs v1.2.1 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:20.3101796Z Compiling portable-pty v0.8.1 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:20.3194068Z Compiling spt-runtime v0.12.1 (C:\actions-runner\_work\spt-core\spt-core\crates\spt-runtime) test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:20.9632299Z Compiling spake2 v0.4.0 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:21.4548194Z Compiling portmapper v0.16.0 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:21.4810593Z Compiling sha1 v0.10.6 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:21.6803006Z Compiling doctest-file v1.1.1 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:21.7471455Z Compiling recvmsg v1.0.0 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:21.8377451Z Compiling spt-term v0.12.1 (C:\actions-runner\_work\spt-core\spt-core\crates\spt-term) test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:21.9582201Z Compiling tempfile v3.27.0 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:22.4958271Z Compiling interprocess v2.4.2 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:22.8040174Z Compiling spt-live v0.12.1 (C:\actions-runner\_work\spt-core\spt-core\crates\spt-live) test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:39.7580916Z Compiling spt-net v0.12.1 (C:\actions-runner\_work\spt-core\spt-core\crates\spt-net) test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:41.1614513Z Compiling spt-daemon v0.12.1 (C:\actions-runner\_work\spt-core\spt-core\crates\spt-daemon) test (self-hosted, Windows, hfenduleam) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:45:22.7938129Z Finished `test` profile [unoptimized + debuginfo] target(s) in 1m 30s test (self-hosted, Windows, hfenduleam) WEDGE-TRACE diagnostic (warm, both gates, both platforms) 2026-06-21T09:45:30.5909709Z ##[group]Run cargo nextest run -p spt-daemon --no-fail-fast \ test (self-hosted, Windows, hfenduleam) WEDGE-TRACE diagnostic (warm, both gates, both platforms) 2026-06-21T09:45:30.5910054Z cargo nextest run -p spt-daemon --no-fail-fast \ test (self-hosted, Windows, hfenduleam) WEDGE-TRACE diagnostic (warm, both gates, both platforms) 2026-06-21T09:45:30.5910368Z  -E 'test(a_journaled_input_wedge) | test(p0_paste_wedge) | test(g2_no_commit)' \ test (self-hosted, Windows, hfenduleam) WEDGE-TRACE diagnostic (warm, both gates, both platforms) 2026-06-21T09:45:30.5910646Z  --no-capture 2>&1 \ test (self-hosted, Windows, hfenduleam) WEDGE-TRACE diagnostic (warm, both gates, both platforms) 2026-06-21T09:45:30.5911063Z | grep -E 'JOURNAL-WEDGE GATE|PASTE-WEDGE GATE|subscribed|got_output|attach_received|keystroke_accepted|assertion|panicked|c1:|c2:|c3:|EVICT|c3-DROP|PASS|FAIL' \ test (self-hosted, Windows, hfenduleam) WEDGE-TRACE diagnostic (warm, both gates, both platforms) 2026-06-21T09:45:30.5911510Z | grep -vE 'drain appends=' || true test (self-hosted, Windows, hfenduleam) WEDGE-TRACE diagnostic (warm, both gates, both platforms) 2026-06-21T09:45:30.5987792Z shell: C:\Program Files\PowerShell\7\pwsh.EXE -command ". '{0}'" test (self-hosted, Windows, hfenduleam) WEDGE-TRACE diagnostic (warm, both gates, both platforms) 2026-06-21T09:45:30.5988011Z env: test (self-hosted, Windows, hfenduleam) WEDGE-TRACE diagnostic (warm, both gates, both platforms) 2026-06-21T09:45:30.5988133Z SPT_REGISTRY_BUSY_TIMEOUT_MS: 30000 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE diagnostic (warm, both gates, both platforms) 2026-06-21T09:45:30.5988290Z SPT_WEDGE_TRACE: 1 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE diagnostic (warm, both gates, both platforms) 2026-06-21T09:45:30.5988410Z ##[endgroup] test (self-hosted, Windows, hfenduleam) WEDGE-TRACE diagnostic (warm, both gates, both platforms) 2026-06-21T09:45:30.9971608Z ParserError: C:\actions-runner\_work\_temp\bb0b4635-dc0d-438b-ac0f-d2acabdc1212.ps1:4 test (self-hosted, Windows, hfenduleam) WEDGE-TRACE diagnostic (warm, both gates, both platforms) 2026-06-21T09:45:30.9972207Z Line | test (self-hosted, Windows, hfenduleam) WEDGE-TRACE diagnostic (warm, both gates, both platforms) 2026-06-21T09:45:30.9972613Z  4 |  --no-capture 2>&1 \ test (self-hosted, Windows, hfenduleam) WEDGE-TRACE diagnostic (warm, both gates, both platforms) 2026-06-21T09:45:30.9973016Z  |  ~ test (self-hosted, Windows, hfenduleam) WEDGE-TRACE diagnostic (warm, both gates, both platforms) 2026-06-21T09:45:30.9973542Z  | Missing expression after unary operator '--'. test (self-hosted, Windows, hfenduleam) WEDGE-TRACE diagnostic (warm, both gates, both platforms) 2026-06-21T09:45:31.0482405Z ##[error]Process completed with exit code 1. test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:31.0605595Z ##[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-21T09:45:31.0608904Z 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-21T09:45:31.0676008Z shell: C:\Program Files\PowerShell\7\pwsh.EXE -command ". '{0}'" test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:31.0676219Z env: test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:31.0676347Z SPT_REGISTRY_BUSY_TIMEOUT_MS: 30000 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:31.0676517Z ##[endgroup] test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:32.4156802Z Compiling getrandom v0.3.4 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:32.4168109Z Compiling windows-sys v0.61.2 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:32.4306640Z Compiling strsim v0.11.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:32.4337683Z Compiling fs_extra v1.3.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:32.4338045Z Compiling dunce v1.0.5 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:32.4361026Z Compiling windows-sys v0.59.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:32.4370114Z Compiling aws-lc-rs v1.17.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:32.4370482Z Compiling unicode-segmentation v1.13.3 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:32.4402308Z Compiling rustls v0.23.40 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:32.4427341Z Compiling either v1.16.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:32.4836480Z Compiling once_cell_polyfill v1.70.2 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:32.4836902Z Compiling anstyle v1.0.14 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:32.4837151Z Compiling utf8parse v0.2.2 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:32.4837392Z Compiling is_terminal_polyfill v1.70.2 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:32.4837658Z Compiling foldhash v0.1.5 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:32.4837983Z Compiling colorchoice v1.0.5 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:32.6147269Z Compiling darling_core v0.20.11 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:32.6246199Z Compiling darling_core v0.23.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:32.6257261Z Compiling anstyle-parse v1.0.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:32.6339986Z Compiling instability v0.3.12 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:32.6404621Z Compiling paste v1.0.15 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:32.7264193Z Compiling prefix-trie v0.8.4 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:32.7401626Z Compiling itertools v0.13.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:32.7445326Z Compiling hashbrown v0.15.5 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:32.7560805Z Compiling strum_macros v0.26.4 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:32.7843614Z Compiling castaway v0.2.4 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:32.8320856Z Compiling crossterm_winapi v0.9.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:32.9180732Z Compiling convert_case v0.10.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:32.9714905Z Compiling static_assertions v1.1.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:33.0597756Z Compiling indoc v2.0.7 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:33.0622338Z Compiling clap_lex v1.1.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:33.1003795Z Compiling unicode-width v0.1.14 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:33.1013885Z Compiling compact_str v0.8.2 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:33.2221373Z Compiling jobserver v0.1.34 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:33.3616121Z Compiling derive_more-impl v2.1.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:33.4268963Z Compiling hickory-proto v0.26.0-beta.4 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:33.4843783Z Compiling cc v1.2.63 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:33.4844678Z Compiling lru v0.12.5 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:33.5158103Z Compiling crossterm v0.28.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:33.5606732Z Compiling clap_derive v4.6.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:33.7063238Z Compiling error-code v3.3.2 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:33.7266177Z Compiling cassowary v0.3.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:33.7494695Z Compiling unicode-width v0.2.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:33.9893726Z Compiling clipboard-win v5.4.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:34.0268288Z Compiling nucleo-matcher v0.3.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:34.1699377Z Compiling qrcode v0.14.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:34.2007754Z 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-21T09:45:34.7013538Z Compiling cmake v0.1.58 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:34.7445825Z Compiling unicode-truncate v1.1.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:34.8825416Z 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-21T09:45:35.3407542Z Compiling strum v0.26.3 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:35.6660754Z Compiling libsqlite3-sys v0.30.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:35.7032958Z Compiling aws-lc-sys v0.41.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:35.7095685Z Compiling ring v0.17.14 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:35.7790978Z Compiling darling_macro v0.20.11 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:35.7878566Z Compiling blake3 v1.8.5 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:35.9567254Z Compiling darling_macro v0.23.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:37.3353440Z Compiling darling v0.20.11 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:37.3354006Z Compiling darling v0.23.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:37.3618557Z Compiling derive_more v2.1.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:37.7320358Z Compiling derive_builder_core v0.20.2 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:37.7894724Z Compiling iroh-base v0.98.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:38.3660973Z Compiling ratatui v0.29.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:38.4906817Z Compiling derive_builder_macro v0.20.2 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:38.8741459Z Compiling derive_builder v0.20.2 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:39.0878015Z Compiling rusqlite v0.32.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:39.1027417Z Compiling vergen-lib v9.1.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:39.1541472Z Compiling vergen-lib v0.1.6 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:39.2707685Z Compiling vergen v9.1.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:39.3888788Z Compiling vergen-gitcl v1.0.8 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:39.9665448Z 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-21T09:45:39.9864660Z Compiling iroh-relay v0.98.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:40.3733480Z Compiling socket2 v0.6.4 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:40.4358402Z Compiling mio v1.2.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:40.5218069Z Compiling tempfile v3.27.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:40.5343451Z Compiling netdev v0.42.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:40.6455776Z Compiling seize v0.5.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:40.6489317Z Compiling interprocess v2.4.2 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:40.8256010Z Compiling noq-udp v0.10.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:40.9825152Z Compiling tokio v1.52.3 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:41.0287173Z Compiling ipconfig v0.3.4 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:41.0324218Z Compiling papaya v0.2.4 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:41.1117595Z Compiling anstyle-wincon v3.0.11 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:41.2834176Z Compiling anstyle-query v1.1.5 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:41.2835773Z Compiling terminal_size v0.4.4 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:41.4235108Z Compiling anstream v1.0.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:41.7174971Z Compiling clap_builder v4.6.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:42.0129815Z 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-21T09:45:42.5922170Z 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-21T09:45:42.7192743Z 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-21T09:45:43.6525406Z Compiling clap v4.6.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:44.7829360Z 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-21T09:45:45.2177050Z Compiling tokio-util v0.7.18 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:45.4458148Z Compiling tower v0.5.3 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:45.8210802Z Compiling acto v0.8.2 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:46.0850992Z Compiling h2 v0.4.14 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:46.3486884Z Compiling n0-future v0.3.2 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:46.4620340Z Compiling tokio-stream v0.1.18 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:46.5054166Z Compiling n0-watcher v0.6.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:46.5404044Z Compiling tower-http v0.6.11 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:46.7274039Z Compiling iroh-dns v0.98.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:46.7912882Z Compiling netwatch v0.16.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:46.8482873Z Compiling swarm-discovery v0.6.0-alpha.2 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:46.9134615Z Compiling backon v1.6.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:50.6474027Z Compiling hyper v1.10.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:52.0499280Z Compiling hyper-util v0.1.20 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:53.3229683Z Compiling igd-next v0.17.1 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:45:54.1689301Z Compiling portmapper v0.16.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:00.7090449Z Compiling rustls-webpki v0.103.13 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:03.1888189Z Compiling tokio-rustls v0.26.4 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:03.1888884Z Compiling noq-proto v0.17.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:03.1889155Z Compiling rustls-platform-verifier v0.7.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:03.3459905Z Compiling hickory-net v0.26.0-beta.4 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:03.3460595Z Compiling hyper-rustls v0.27.9 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:03.3460919Z Compiling tokio-websockets v0.13.2 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:03.5019610Z Compiling reqwest v0.13.4 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:04.4491792Z Compiling hickory-resolver v0.26.0-beta.4 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:06.7331036Z Compiling noq v0.18.0 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:11.9572552Z Compiling iroh v0.98.2 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:23.7268745Z 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-21T09:46:25.1850815Z 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-21T09:46:35.6319191Z 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-21T09:46:59.6895583Z 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-21T09:47:25.4188828Z Finished `test` profile [unoptimized + debuginfo] target(s) in 1m 53s test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:48.8300577Z ──────────── test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:48.8301279Z Nextest run ID 392237f5-6d6e-444a-81b0-b3ab48e4e5d7 with nextest profile: default test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:48.8301628Z Starting 1168 tests across 48 binaries (1 test and 39 binaries skipped) test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:48.8558312Z PASS [ 0.021s] ( 1/1168) spt::notify_shell_e2e notify_shell_renders_a_commanded_toast test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:48.8559586Z PASS [ 0.022s] ( 2/1168) mock-adapter::manifest_valid mock_manifest_parses_and_validates test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:48.8586695Z PASS [ 0.026s] ( 3/1168) mock-adapter::manifest_valid mock_declares_commune_signoff_as_filedrops test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:48.8826927Z PASS [ 0.049s] ( 4/1168) mock-adapter::manifest_valid mock_has_no_claude_code_conventions test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:48.9021958Z PASS [ 0.046s] ( 5/1168) spt::release_verify_e2e published_release_verifies_against_embedded_anchor test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:51.7326429Z PASS [ 2.900s] ( 6/1168) spt::n1_compat brain_accepts_old_and_new_broker_argv test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:52.4894686Z PASS [ 3.656s] ( 7/1168) spt::contract_e2e mock_adapter_drives_the_full_contract test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:52.5300093Z PASS [ 0.041s] ( 8/1168) spt::bin/spt api::auth::tests::mints_distinct_nonempty_tokens test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:52.5341668Z PASS [ 3.701s] ( 9/1168) spt::drive_e2e drive_channel_slot_through_the_real_socket test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:52.5601687Z PASS [ 3.709s] ( 10/1168) 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-21T09:47:52.6669278Z PASS [ 0.121s] ( 11/1168) spt::bin/spt api::auth::tests::session_id_proof_authenticates test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:52.6689474Z PASS [ 0.130s] ( 12/1168) spt::bin/spt api::auth::tests::no_proof_is_refused test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:52.7034358Z PASS [ 0.134s] ( 13/1168) 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-21T09:47:52.7338352Z PASS [ 0.068s] ( 14/1168) spt::bin/spt api::delivery::tests::echo_gate_explicit_toggle test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:52.7544698Z PASS [ 0.090s] ( 15/1168) spt::bin/spt api::auth::tests::token_proof_authenticates test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:52.7628269Z PASS [ 3.898s] ( 16/1168) 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-21T09:47:52.7916544Z PASS [ 0.115s] ( 17/1168) 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-21T09:47:52.7987327Z PASS [ 0.041s] ( 18/1168) 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-21T09:47:52.7996183Z PASS [ 0.041s] ( 19/1168) 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-21T09:47:52.8074059Z PASS [ 0.063s] ( 20/1168) 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-21T09:47:52.8094851Z PASS [ 0.031s] ( 21/1168) 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-21T09:47:52.8452015Z PASS [ 4.010s] ( 22/1168) spt::contract_e2e seed_then_listen_binds_and_relays test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:52.8822854Z PASS [ 0.035s] ( 23/1168) spt::bin/spt api::reporting::tests::boundary_missing_perch_refused test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:52.9326055Z PASS [ 4.097s] ( 24/1168) 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-21T09:47:52.9665713Z PASS [ 0.171s] ( 25/1168) 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-21T09:47:52.9953944Z PASS [ 0.028s] ( 26/1168) spt::bin/spt api::reporting::tests::capability_lists_hostable_types test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:53.8372991Z PASS [ 0.959s] ( 27/1168) spt::bin/spt api::reporting::tests::boundary_rebinds_keeping_anchor test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:54.0413175Z PASS [ 5.201s] ( 28/1168) 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-21T09:47:54.0489353Z PASS [ 1.253s] ( 29/1168) 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-21T09:47:54.0650563Z PASS [ 1.066s] ( 30/1168) 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-21T09:47:54.0651541Z PASS [ 0.226s] ( 31/1168) 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-21T09:47:54.0755462Z PASS [ 0.037s] ( 32/1168) 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-21T09:47:54.0808003Z PASS [ 1.276s] ( 33/1168) 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-21T09:47:54.0814610Z PASS [ 0.032s] ( 34/1168) 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-21T09:47:54.1069256Z PASS [ 0.036s] ( 35/1168) spt::bin/spt api::reporting::tests::presence_records_endpoint test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:54.1246630Z PASS [ 0.051s] ( 36/1168) 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-21T09:47:54.1254355Z PASS [ 0.063s] ( 37/1168) 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-21T09:47:54.1311471Z PASS [ 1.321s] ( 38/1168) 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-21T09:47:54.1315510Z PASS [ 0.068s] ( 39/1168) spt::bin/spt api::reporting::tests::history_log_appends test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:54.1622159Z PASS [ 0.031s] ( 40/1168) spt::bin/spt api::startup::tests::empty_session_seed_refused test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:54.1837276Z PASS [ 0.103s] ( 41/1168) 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-21T09:47:54.2036536Z PASS [ 5.344s] ( 42/1168) 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-21T09:47:54.2428480Z PASS [ 0.039s] ( 43/1168) spt::bin/spt api::startup::tests::missing_seed_refused test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:54.2460131Z PASS [ 0.062s] ( 44/1168) 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-21T09:47:54.2466640Z PASS [ 0.140s] ( 45/1168) 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-21T09:47:54.2477950Z PASS [ 0.125s] ( 46/1168) 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-21T09:47:54.2834607Z PASS [ 0.152s] ( 47/1168) 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-21T09:47:54.3097210Z PASS [ 0.026s] ( 48/1168) 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-21T09:47:54.3371348Z PASS [ 0.213s] ( 49/1168) 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-21T09:47:54.3372436Z PASS [ 1.407s] ( 50/1168) spt::bin/spt api::reporting::tests::boundary_resurfaces_undismissed_notifs test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:54.3549177Z PASS [ 0.192s] ( 51/1168) 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-21T09:47:54.3550463Z PASS [ 0.107s] ( 52/1168) 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-21T09:47:54.3701949Z PASS [ 0.029s] ( 53/1168) spt::bin/spt api::tests::adapter_is_optional test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:54.3730930Z PASS [ 0.058s] ( 54/1168) 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-21T09:47:54.3732958Z PASS [ 0.124s] ( 55/1168) spt::bin/spt api::startup::tests::rebind_same_session_ok test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:54.3736025Z PASS [ 0.128s] ( 56/1168) 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-21T09:47:54.3909748Z PASS [ 0.142s] ( 57/1168) 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-21T09:47:54.3935662Z PASS [ 0.056s] ( 58/1168) 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-21T09:47:54.4003009Z PASS [ 0.045s] ( 59/1168) 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-21T09:47:54.4004111Z PASS [ 0.033s] ( 60/1168) 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-21T09:47:54.4110916Z PASS [ 0.040s] ( 61/1168) spt::bin/spt api::tests::state_value_is_validated test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:54.4142714Z PASS [ 0.045s] ( 62/1168) 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-21T09:47:54.4162904Z PASS [ 0.059s] ( 63/1168) 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-21T09:47:54.4217625Z PASS [ 0.050s] ( 64/1168) spt::bin/spt api::tests::surface_parses test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:54.4358342Z PASS [ 0.045s] ( 65/1168) 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-21T09:47:54.4591365Z PASS [ 0.062s] ( 66/1168) 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-21T09:47:54.4593706Z PASS [ 0.046s] ( 67/1168) 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-21T09:47:54.4594314Z PASS [ 0.046s] ( 68/1168) spt::bin/spt cli::tests::access_subcommands_parse test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:54.4964839Z PASS [ 0.034s] ( 69/1168) spt::bin/spt cli::tests::adapter_subcommands_parse test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:54.4981689Z PASS [ 0.064s] ( 70/1168) spt::bin/spt cli::tests::adapter_profile_verbs_local_only test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:54.5341409Z PASS [ 0.038s] ( 71/1168) 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-21T09:47:54.5363445Z PASS [ 0.077s] ( 72/1168) 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-21T09:47:54.5365493Z PASS [ 0.080s] ( 73/1168) spt::bin/spt cli::tests::adapter_string_verbs test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:54.5529344Z PASS [ 0.023s] ( 74/1168) spt::bin/spt cli::tests::bare_spt_parses_to_none test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:54.5673591Z PASS [ 0.030s] ( 75/1168) 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-21T09:47:54.5686408Z PASS [ 0.070s] ( 76/1168) 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-21T09:47:54.5836559Z PASS [ 0.046s] ( 77/1168) spt::bin/spt cli::tests::bare_tty_guard test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:54.5958034Z PASS [ 0.042s] ( 78/1168) 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-21T09:47:54.6232799Z PASS [ 0.050s] ( 79/1168) 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-21T09:47:54.6233535Z PASS [ 0.039s] ( 80/1168) 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-21T09:47:54.6251019Z PASS [ 0.221s] ( 81/1168) 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-21T09:47:54.6274531Z PASS [ 0.055s] ( 82/1168) 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-21T09:47:54.6387209Z PASS [ 0.238s] ( 83/1168) spt::bin/spt api::worker::tests::worker_poll_drains_spool test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:54.6551101Z PASS [ 0.034s] ( 84/1168) 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-21T09:47:54.6636929Z PASS [ 0.033s] ( 85/1168) spt::bin/spt cli::tests::digest_flag_defaults test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:54.6680736Z PASS [ 0.067s] ( 86/1168) 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-21T09:47:54.6683279Z PASS [ 0.045s] ( 87/1168) spt::bin/spt cli::tests::daemon_subcommands_parse test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:54.6694935Z PASS [ 0.044s] ( 88/1168) 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-21T09:47:54.6861871Z PASS [ 0.033s] ( 89/1168) 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-21T09:47:54.7021354Z PASS [ 0.035s] ( 90/1168) spt::bin/spt cli::tests::endpoint_role_parses test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:54.7057456Z PASS [ 0.031s] ( 91/1168) spt::bin/spt cli::tests::escalation_choice_parses_fail_closed test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:54.7426204Z PASS [ 0.052s] ( 92/1168) spt::bin/spt cli::tests::gh_release_version_compare_decision test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:54.7620581Z PASS [ 0.093s] ( 93/1168) spt::bin/spt cli::tests::endpoint_subcommands_parse test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:54.7691858Z PASS [ 5.934s] ( 94/1168) 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-21T09:47:54.7718359Z PASS [ 0.070s] ( 95/1168) spt::bin/spt cli::tests::grant_subcommands_parse test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:54.7936018Z PASS [ 0.047s] ( 96/1168) spt::bin/spt cli::tests::help_groups_cover_every_command test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:54.8245552Z PASS [ 0.151s] ( 97/1168) spt::bin/spt cli::tests::endpoint_stop_marks_offline test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:54.8332318Z PASS [ 0.412s] ( 98/1168) 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-21T09:47:54.8499940Z PASS [ 0.429s] ( 99/1168) 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-21T09:47:54.8853667Z PASS [ 6.052s] ( 100/1168) spt::quickstart_e2e published_messaging_quickstart_runs_as_written test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:55.0132767Z PASS [ 6.178s] ( 101/1168) 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-21T09:47:55.2156686Z PASS [ 0.456s] ( 102/1168) 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-21T09:47:55.2221367Z PASS [ 0.451s] ( 103/1168) 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-21T09:47:55.2284731Z PASS [ 0.454s] ( 104/1168) spt::bin/spt cli::tests::invalid_usage_errors test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:55.2398899Z PASS [ 0.421s] ( 105/1168) 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-21T09:47:55.2420293Z PASS [ 0.444s] ( 106/1168) 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-21T09:47:55.2431551Z PASS [ 0.228s] ( 107/1168) 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-21T09:47:55.2477841Z PASS [ 0.395s] ( 108/1168) 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-21T09:47:55.2505607Z PASS [ 0.030s] ( 109/1168) 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-21T09:47:55.2509862Z PASS [ 0.028s] ( 110/1168) spt::bin/spt cli::tests::notify_subnet_resolution_home_default test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:55.2522983Z PASS [ 0.419s] ( 111/1168) 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-21T09:47:55.2671892Z PASS [ 0.026s] ( 112/1168) 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-21T09:47:55.2743550Z PASS [ 0.374s] ( 113/1168) 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-21T09:47:55.2762591Z PASS [ 0.040s] ( 114/1168) spt::bin/spt cli::tests::notify_surface_parses test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:55.2773194Z PASS [ 0.037s] ( 115/1168) 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-21T09:47:55.2835416Z PASS [ 0.038s] ( 116/1168) spt::bin/spt cli::tests::pair_namespace_is_gone test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:55.2979033Z PASS [ 0.037s] ( 117/1168) spt::bin/spt cli::tests::prune_candidates_resolve_never_guess test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:55.3093663Z PASS [ 0.031s] ( 118/1168) spt::bin/spt cli::tests::ring_timeout_defaults test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:55.3175213Z PASS [ 0.057s] ( 119/1168) 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-21T09:47:55.3511903Z PASS [ 0.034s] ( 120/1168) 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-21T09:47:55.3588862Z PASS [ 0.037s] ( 121/1168) 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-21T09:47:55.3788256Z PASS [ 0.033s] ( 122/1168) 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-21T09:47:55.3930006Z PASS [ 0.034s] ( 123/1168) spt::bin/spt cli::tests::send_user_msg_flag_parses test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:55.3998226Z PASS [ 0.102s] ( 124/1168) 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-21T09:47:55.4687208Z PASS [ 0.212s] ( 125/1168) 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-21T09:47:55.4883540Z PASS [ 0.211s] ( 126/1168) 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-21T09:47:55.5057874Z PASS [ 6.672s] ( 127/1168) 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-21T09:47:55.5112833Z PASS [ 0.263s] ( 128/1168) 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-21T09:47:55.5113524Z PASS [ 0.123s] ( 129/1168) spt::bin/spt cli::tests::shell_owner_exclusivity_negatives test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:55.5217051Z PASS [ 0.113s] ( 130/1168) 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-21T09:47:55.5721335Z PASS [ 0.059s] ( 131/1168) spt::bin/spt cli::tests::shell_subcommands_parse test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:55.5839347Z PASS [ 0.072s] ( 132/1168) spt::bin/spt cli::tests::show_code_prints_reprovisioning_material test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:55.6371131Z PASS [ 0.067s] ( 133/1168) spt::bin/spt cli::tests::shutdown_soft_stops_and_suspends test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:55.6707984Z PASS [ 0.154s] ( 134/1168) 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-21T09:47:55.6961353Z PASS [ 0.106s] ( 135/1168) 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-21T09:47:55.7087216Z PASS [ 6.817s] ( 136/1168) spt::shell_e2e mock_shell_binary_drives_the_full_link test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:55.7118317Z PASS [ 0.043s] ( 137/1168) spt::bin/spt cli::tests::subcommands_parse test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:55.7445042Z PASS [ 0.038s] ( 138/1168) 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-21T09:47:55.7452414Z PASS [ 0.044s] ( 139/1168) 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-21T09:47:55.7488746Z PASS [ 0.058s] ( 140/1168) spt::bin/spt cli::tests::subnet_arg_shapes_parse test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:55.7781614Z PASS [ 0.033s] ( 141/1168) spt::bin/spt cli::tests::unknown_elevation_falls_back test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:55.7801218Z PASS [ 0.036s] ( 142/1168) 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-21T09:47:55.7814566Z PASS [ 0.034s] ( 143/1168) 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-21T09:47:55.8019907Z PASS [ 0.020s] ( 144/1168) 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-21T09:47:55.8020887Z PASS [ 0.024s] ( 145/1168) 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-21T09:47:55.8021451Z PASS [ 0.022s] ( 146/1168) 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-21T09:47:55.8328162Z PASS [ 0.031s] ( 147/1168) 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-21T09:47:55.8329071Z PASS [ 0.031s] ( 148/1168) 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-21T09:47:55.8387420Z PASS [ 0.031s] ( 149/1168) 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-21T09:47:55.8402873Z PASS [ 0.594s] ( 150/1168) 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-21T09:47:55.8522696Z PASS [ 0.019s] ( 151/1168) 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-21T09:47:55.8594463Z PASS [ 0.024s] ( 152/1168) 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-21T09:47:55.8654404Z PASS [ 0.028s] ( 153/1168) 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-21T09:47:55.8668032Z PASS [ 0.027s] ( 154/1168) 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-21T09:47:55.8859645Z PASS [ 0.032s] ( 155/1168) 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-21T09:47:55.8912198Z PASS [ 0.028s] ( 156/1168) 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-21T09:47:55.9041622Z PASS [ 0.038s] ( 157/1168) 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-21T09:47:55.9056077Z PASS [ 0.032s] ( 158/1168) spt::bin/spt helpfmt::tests::color_enabled_truth_table test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:55.9056736Z PASS [ 0.269s] ( 159/1168) spt::bin/spt cli::tests::spt_hosted_no_relay_detection test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:55.9131872Z PASS [ 0.028s] ( 160/1168) 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-21T09:47:55.9226929Z PASS [ 0.033s] ( 161/1168) 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-21T09:47:55.9231505Z PASS [ 0.455s] ( 162/1168) spt::bin/spt cli::tests::shell_spawn_approval_floor_gates test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:55.9258126Z PASS [ 0.024s] ( 163/1168) 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-21T09:47:55.9423432Z PASS [ 0.037s] ( 164/1168) spt::bin/spt helpfmt::tests::link_becomes_its_text test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:55.9541310Z PASS [ 0.046s] ( 165/1168) 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-21T09:47:55.9541968Z PASS [ 0.038s] ( 166/1168) 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-21T09:47:55.9562237Z PASS [ 0.031s] ( 167/1168) 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-21T09:47:55.9574468Z PASS [ 0.033s] ( 168/1168) spt::bin/spt helpfmt::tests::multibyte_text_survives test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:55.9575484Z PASS [ 0.576s] ( 169/1168) 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-21T09:47:55.9576348Z PASS [ 0.031s] ( 170/1168) spt::bin/spt helpfmt::tests::plain_text_is_unchanged test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:55.9614282Z PASS [ 0.022s] ( 171/1168) 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-21T09:47:55.9721811Z PASS [ 0.017s] ( 172/1168) 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-21T09:47:55.9785712Z PASS [ 0.025s] ( 173/1168) spt::bin/spt picker::model::tests::back_unwinds test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:55.9881230Z PASS [ 0.025s] ( 174/1168) 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-21T09:47:55.9956281Z PASS [ 0.034s] ( 175/1168) spt::bin/spt picker::model::tests::adapter_tree_nests_profiles test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:55.9963020Z PASS [ 0.037s] ( 176/1168) 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-21T09:47:56.0003897Z PASS [ 0.036s] ( 177/1168) spt::bin/spt picker::model::tests::category_ring_wraps test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:56.0087833Z PASS [ 0.029s] ( 178/1168) spt::bin/spt picker::model::tests::confirm_options_status_dependent test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:56.0138161Z PASS [ 0.041s] ( 179/1168) spt::bin/spt picker::model::tests::confirm_terminal_routes test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:56.0200183Z PASS [ 0.033s] ( 180/1168) spt::bin/spt picker::model::tests::create_outcome_bakes_run test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:56.0200678Z PASS [ 0.036s] ( 181/1168) spt::bin/spt picker::model::tests::cursor_clamps test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:56.0233176Z PASS [ 0.031s] ( 182/1168) spt::bin/spt picker::model::tests::filter_narrows test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:56.0249165Z PASS [ 0.034s] ( 183/1168) spt::bin/spt picker::model::tests::prefill_jumps_to_create test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:56.0250415Z PASS [ 0.039s] ( 184/1168) 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-21T09:47:56.0311555Z PASS [ 0.038s] ( 185/1168) spt::bin/spt picker::model::tests::kind_routes test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:56.0365577Z PASS [ 0.025s] ( 186/1168) spt::bin/spt picker::model::tests::resume_outcome_bakes_session test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:56.0375649Z PASS [ 0.028s] ( 187/1168) 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-21T09:47:56.0388398Z PASS [ 0.027s] ( 188/1168) spt::bin/spt picker::model::tests::resume_title_render test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:56.0426656Z PASS [ 0.024s] ( 189/1168) 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-21T09:47:56.0491068Z PASS [ 0.024s] ( 190/1168) spt::bin/spt picker::model::tests::visible_partitions_and_sorts test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:56.0546029Z PASS [ 0.024s] ( 191/1168) 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-21T09:47:56.0668362Z PASS [ 0.038s] ( 192/1168) spt::bin/spt picker::shortcut::tests::bakes_resume_and_action test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:56.0704622Z PASS [ 0.035s] ( 193/1168) spt::bin/spt picker::shortcut::tests::basename_is_parameterized test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:56.0720002Z PASS [ 0.034s] ( 194/1168) spt::bin/spt picker::shortcut::tests::sentinel_detection test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:56.0833839Z PASS [ 7.181s] ( 195/1168) 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-21T09:47:56.1062416Z PASS [ 0.604s] ( 196/1168) 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-21T09:47:56.1071558Z PASS [ 0.044s] ( 197/1168) spt::bin/spt picker::view::tests::confirm_buffer_options test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:56.1072164Z PASS [ 0.056s] ( 198/1168) spt::bin/spt picker::shortcut::tests::write_create_update_refuse test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:56.1080620Z PASS [ 0.050s] ( 199/1168) spt::bin/spt picker::view::tests::kind_buffer test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:56.1081215Z PASS [ 0.037s] ( 200/1168) spt::bin/spt picker::view::tests::pick_empty_category_hint test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:56.1125583Z PASS [ 0.067s] ( 201/1168) spt::bin/spt picker::view::tests::adapter_tree_buffer test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:56.1165424Z PASS [ 0.048s] ( 202/1168) 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-21T09:47:56.1350991Z PASS [ 0.032s] ( 203/1168) 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-21T09:47:56.1351739Z PASS [ 0.030s] ( 204/1168) 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-21T09:47:56.1426550Z PASS [ 0.046s] ( 205/1168) spt::bin/spt picker::view::tests::resume_buffer_lists_sessions test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:56.1487494Z PASS [ 0.022s] ( 206/1168) spt::bin/spt rc::tests::first_event_stall_decision test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:56.1523465Z PASS [ 0.028s] ( 207/1168) spt::bin/spt rc::tests::detach_prefix_spans_chunks test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:56.1524265Z PASS [ 0.038s] ( 208/1168) 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-21T09:47:56.1525312Z PASS [ 0.036s] ( 209/1168) spt::bin/spt rc::tests::detach_keybind_semantics test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:56.1525881Z PASS [ 0.080s] ( 210/1168) 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-21T09:47:56.1526391Z PASS [ 0.027s] ( 211/1168) spt::bin/spt rc::tests::key_event_step_detach_sm test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:56.1645715Z PASS [ 0.036s] ( 212/1168) 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-21T09:47:56.1651664Z PASS [ 0.070s] ( 213/1168) 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-21T09:47:56.1710385Z PASS [ 0.027s] ( 214/1168) spt::bin/spt rc::tests::scroll_dir_classifies_wheel_only test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:56.1711032Z PASS [ 0.027s] ( 215/1168) spt::bin/spt rc::tests::op_minter_distinct_and_monotonic test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:56.1711684Z PASS [ 0.028s] ( 216/1168) 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-21T09:47:56.1712406Z PASS [ 0.037s] ( 217/1168) 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-21T09:47:56.1713163Z PASS [ 0.025s] ( 218/1168) 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-21T09:47:56.1724994Z PASS [ 0.020s] ( 219/1168) 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-21T09:47:56.1897124Z PASS [ 0.037s] ( 220/1168) spt::bin/spt wansend::tests::load_snapshots_degrades_on_junk test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:56.2148605Z PASS [ 4.482s] ( 221/1168) 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-21T09:47:56.4114281Z PASS [ 1.761s] ( 222/1168) 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-21T09:47:56.4181078Z PASS [ 0.256s] ( 223/1168) spt::bin/spt wansend::tests::refusals_render_copy_paste_targets test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:56.4386373Z PASS [ 0.271s] ( 224/1168) spt-daemon adapter_update::tests::delegated_attested_delegates_command test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:56.4428400Z PASS [ 0.271s] ( 225/1168) spt-daemon adapter_update::tests::delegated_unattested_is_skipped test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:56.4525186Z PASS [ 0.041s] ( 226/1168) 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-21T09:47:56.4569693Z PASS [ 0.267s] ( 227/1168) spt-daemon adapter_update::tests::file_pull_tampered_bytes_rejected test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:56.4612568Z PASS [ 0.022s] ( 228/1168) 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-21T09:47:56.4613337Z PASS [ 0.246s] ( 229/1168) 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-21T09:47:56.4664952Z PASS [ 0.048s] ( 230/1168) spt-daemon adapter_update::tests::file_pull_wrong_key_rejected test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:56.4746506Z PASS [ 0.032s] ( 231/1168) 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-21T09:47:57.8343512Z PASS [ 1.667s] ( 232/1168) spt-daemon access::tests::same_node_always_passes_without_minting test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:57.8612112Z PASS [ 1.694s] ( 233/1168) spt-daemon access::tests::reply_passes_where_unsolicited_refused test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:57.8919072Z PASS [ 1.704s] ( 234/1168) spt-daemon access::tests::gate_decision_table test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:57.9094174Z PASS [ 1.449s] ( 235/1168) spt-daemon applyhost::tests::apply_staged_refuses_a_quarantined_version test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:57.9261110Z PASS [ 1.451s] ( 236/1168) 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-21T09:47:57.9266847Z PASS [ 1.465s] ( 237/1168) 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-21T09:47:57.9293902Z PASS [ 1.477s] ( 238/1168) 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-21T09:47:57.9314143Z PASS [ 1.475s] ( 239/1168) 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-21T09:47:57.9543687Z PASS [ 0.081s] ( 240/1168) 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-21T09:47:57.9545174Z PASS [ 0.025s] ( 241/1168) 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-21T09:47:57.9572079Z PASS [ 0.042s] ( 242/1168) spt-daemon brainproc::tests::appended_padding_flips_exe_hash test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:57.9794886Z PASS [ 0.049s] ( 243/1168) spt-daemon brainproc::tests::bytes_gate_truth_table test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:57.9873870Z PASS [ 0.123s] ( 244/1168) 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-21T09:47:57.9911911Z PASS [ 0.032s] ( 245/1168) 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-21T09:47:57.9957100Z PASS [ 0.055s] ( 246/1168) 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-21T09:47:58.0024212Z PASS [ 1.529s] ( 247/1168) 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-21T09:47:58.0029605Z PASS [ 0.161s] ( 248/1168) 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-21T09:47:58.0082394Z PASS [ 0.048s] ( 249/1168) 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-21T09:47:58.0086333Z PASS [ 0.052s] ( 250/1168) spt-daemon brainproc::tests::planned_restart_respawns_with_update_reason test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:58.0088666Z PASS [ 0.030s] ( 251/1168) 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-21T09:47:59.2164101Z PASS [ 1.210s] ( 252/1168) 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-21T09:47:59.2164914Z PASS [ 1.226s] ( 253/1168) 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-21T09:47:59.2165749Z PASS [ 1.227s] ( 254/1168) 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-21T09:47:59.2166674Z PASS [ 1.215s] ( 255/1168) 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-21T09:47:59.2167369Z PASS [ 1.208s] ( 256/1168) 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-21T09:47:59.2299457Z PASS [ 1.230s] ( 257/1168) 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-21T09:47:59.2461969Z PASS [ 1.264s] ( 258/1168) spt-daemon brainproc::tests::ready_with_matching_bytes_promotes test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:59.2567285Z PASS [ 1.322s] ( 259/1168) 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-21T09:47:59.2608967Z PASS [ 0.032s] ( 260/1168) spt-daemon broker::tests::a_full_controller_does_not_starve_a_viewer_or_block_the_drain test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:59.2706394Z PASS [ 0.022s] ( 261/1168) spt-daemon broker::tests::advance_delivered_is_monotonic test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:59.2748180Z PASS [ 0.017s] ( 262/1168) spt-daemon broker::tests::contiguous_advance_freezes_on_a_gap test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:59.2755841Z PASS [ 0.021s] ( 263/1168) 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-21T09:47:59.2844321Z PASS [ 0.016s] ( 264/1168) 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-21T09:47:59.2983348Z PASS [ 0.022s] ( 265/1168) 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-21T09:47:59.3028478Z PASS [ 0.019s] ( 266/1168) 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-21T09:47:59.3037420Z PASS [ 0.029s] ( 267/1168) 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-21T09:47:59.3108136Z PASS [ 0.014s] ( 268/1168) 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-21T09:47:59.3150328Z PASS [ 0.012s] ( 269/1168) 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-21T09:47:59.3177264Z PASS [ 0.014s] ( 270/1168) spt-daemon codec::tests::back_to_back_frames_decode_independently test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:59.3256722Z PASS [ 0.013s] ( 271/1168) spt-daemon codec::tests::frame_round_trips_through_buffer test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:59.3281825Z PASS [ 0.013s] ( 272/1168) spt-daemon codec::tests::oversized_prefix_rejected test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:02.0127209Z PASS [ 2.688s] ( 273/1168) spt-daemon config::tests::crash_grace_is_config_driven test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:02.0224091Z PASS [ 2.686s] ( 274/1168) spt-daemon config::tests::detached_subnets_knob_defaults_empty test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:02.0261890Z PASS [ 2.705s] ( 275/1168) 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-21T09:48:02.0306569Z PASS [ 2.809s] ( 276/1168) 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-21T09:48:02.0667266Z PASS [ 0.043s] ( 277/1168) spt-daemon config::tests::missing_file_is_default test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:02.0753070Z PASS [ 0.063s] ( 278/1168) 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-21T09:48:02.0889444Z PASS [ 0.064s] ( 279/1168) spt-daemon config::tests::pulse_period_is_config_driven test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:02.1010437Z PASS [ 0.086s] ( 280/1168) spt-daemon config::tests::malformed_file_degrades_to_default test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:02.1092173Z PASS [ 0.034s] ( 281/1168) spt-daemon config::tests::save_load_roundtrip test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:02.1240734Z PASS [ 0.058s] ( 282/1168) spt-daemon config::tests::relay_choice_is_config_driven test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:02.1353485Z PASS [ 0.046s] ( 283/1168) spt-daemon consent::tests::decide_honors_full_auto_flag test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:02.1698438Z PASS [ 0.070s] ( 284/1168) spt-daemon consent::tests::no_live_session_resolves_to_none test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:02.2063512Z PASS [ 0.034s] ( 285/1168) 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-21T09:48:02.2133623Z PASS [ 6.047s] ( 286/1168) 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-21T09:48:02.2354489Z PASS [ 0.030s] ( 287/1168) 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-21T09:48:02.2356267Z PASS [ 0.125s] ( 288/1168) spt-daemon consent::tests::resolves_most_recently_active_live_session test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:02.2407953Z PASS [ 3.033s] ( 289/1168) 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-21T09:48:02.2427990Z PASS [ 3.035s] ( 290/1168) spt-daemon brainproc::tests::supervisor_respawns_brain_until_stopped test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:02.2428836Z PASS [ 0.031s] ( 291/1168) spt-daemon daemon::tests::drive_ladder_picks_first_ok_rung test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:02.2638043Z PASS [ 0.027s] ( 292/1168) 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-21T09:48:02.2721135Z PASS [ 0.032s] ( 293/1168) spt-daemon daemon::tests::net_retry_backoff_doubles_then_caps test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:02.2754960Z PASS [ 0.030s] ( 294/1168) 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-21T09:48:02.2921333Z PASS [ 0.032s] ( 295/1168) spt-daemon daemon::tests::windows_arg_quoting_roundtrips_the_rules test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:02.2941809Z PASS [ 0.044s] ( 296/1168) spt-daemon daemon::tests::is_running_tracks_the_seed_channel test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:02.2987813Z PASS [ 0.037s] ( 297/1168) 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-21T09:48:02.3144010Z PASS [ 0.042s] ( 298/1168) 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-21T09:48:02.3144757Z PASS [ 0.035s] ( 299/1168) 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-21T09:48:02.3145388Z PASS [ 0.039s] ( 300/1168) spt-daemon deadline::tests::distinct_keys_do_not_cross_clobber test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:02.3151094Z PASS [ 0.042s] ( 301/1168) spt-daemon deadline::tests::corrupt_file_degrades_to_fresh test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:02.3278753Z PASS [ 0.030s] ( 302/1168) 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-21T09:48:02.3415913Z PASS [ 0.023s] ( 303/1168) 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-21T09:48:02.3474957Z PASS [ 0.028s] ( 304/1168) 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-21T09:48:02.3578951Z PASS [ 0.043s] ( 305/1168) 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-21T09:48:02.3588104Z PASS [ 0.031s] ( 306/1168) 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-21T09:48:02.3593736Z PASS [ 0.044s] ( 307/1168) spt-daemon deadline::tests::update_keeps_anchor_and_refreshes_interval test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:02.3699577Z PASS [ 0.028s] ( 308/1168) 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-21T09:48:02.3710144Z PASS [ 0.035s] ( 309/1168) spt-daemon deadline::tests::zero_interval_degrades_to_config_default test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:02.3786278Z PASS [ 0.022s] ( 310/1168) 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-21T09:48:02.3865634Z PASS [ 0.026s] ( 311/1168) 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-21T09:48:02.3953149Z PASS [ 6.230s] ( 312/1168) 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-21T09:48:02.4149932Z PASS [ 0.039s] ( 313/1168) spt-daemon digest::tests::merge_by_ts_interleaves_context test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:02.4232741Z PASS [ 0.035s] ( 314/1168) spt-daemon digest::tests::projects_empty_for_a_sourceless_endpoint test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:02.4247124Z PASS [ 0.055s] ( 315/1168) 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-21T09:48:02.4358957Z PASS [ 0.026s] ( 316/1168) spt-daemon digesthub::tests::dropped_subscriber_is_pruned test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:02.4362683Z LEAK [ 4.433s] ( 317/1168) 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-21T09:48:02.4377299Z PASS [ 0.059s] ( 318/1168) 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-21T09:48:02.4378888Z PASS [ 0.045s] ( 319/1168) spt-daemon digest::tests::resolve_config_precedence test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:02.4437670Z PASS [ 3.227s] ( 320/1168) 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-21T09:48:02.4587622Z PASS [ 0.037s] ( 321/1168) spt-daemon digesthub::tests::project_and_publish_stores_latest test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:02.4689055Z PASS [ 0.041s] ( 322/1168) 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-21T09:48:02.4835486Z PASS [ 0.045s] ( 323/1168) spt-daemon digesthub::tests::subscribe_returns_current_base test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:02.4836102Z PASS [ 0.047s] ( 324/1168) spt-daemon digesthub::tests::render_is_glanceable test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:02.4836674Z PASS [ 0.046s] ( 325/1168) 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-21T09:48:02.4846286Z PASS [ 0.046s] ( 326/1168) spt-daemon dispatch::tests::unknown_shapes_refuse_classification test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:02.4868836Z PASS [ 0.041s] ( 327/1168) spt-daemon drivehub::tests::clear_evicts_the_slot test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:02.4917922Z PASS [ 0.035s] ( 328/1168) spt-daemon drivehub::tests::dead_generation_frame_is_never_served test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:02.4968416Z PASS [ 0.032s] ( 329/1168) spt-daemon drivehub::tests::slots_are_per_owner test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:02.5015826Z PASS [ 0.020s] ( 330/1168) spt-daemon drivehub::tests::take_is_exactly_once test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:02.5119428Z PASS [ 0.027s] ( 331/1168) spt-daemon drivehub::tests::write_is_latest_wins test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:02.5120066Z PASS [ 0.028s] ( 332/1168) 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-21T09:48:02.5188889Z PASS [ 0.379s] ( 333/1168) 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-21T09:48:02.5327134Z PASS [ 0.036s] ( 334/1168) spt-daemon effect::tests::open_creates_missing_parent_dirs test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:02.5422824Z PASS [ 0.056s] ( 335/1168) spt-daemon effect::tests::applied_set_survives_reopen test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:02.5423941Z PASS [ 0.033s] ( 336/1168) 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-21T09:48:02.5460396Z PASS [ 0.033s] ( 337/1168) 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-21T09:48:02.5571477Z PASS [ 0.039s] ( 338/1168) 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-21T09:48:02.5574312Z PASS [ 0.069s] ( 339/1168) spt-daemon effect::tests::failed_effect_is_not_recorded_applied test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:02.5646425Z PASS [ 0.023s] ( 340/1168) spt-daemon frame::tests::handshake_rejects_below_floor test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:02.5653464Z PASS [ 0.055s] ( 341/1168) 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-21T09:48:02.5718562Z PASS [ 0.022s] ( 342/1168) 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-21T09:48:02.5719183Z PASS [ 0.022s] ( 343/1168) spt-daemon grants::tests::escalation_answers_apply test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:02.5744315Z PASS [ 0.028s] ( 344/1168) spt-daemon frame::tests::handshake_rejects_role_mismatch test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:02.5745441Z PASS [ 0.019s] ( 345/1168) spt-daemon grants::tests::escalation_ask_body_roundtrip test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:02.5834461Z PASS [ 0.026s] ( 346/1168) spt-daemon grants::tests::no_session_escalates_with_none_target test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:02.5835063Z PASS [ 0.027s] ( 347/1168) spt-daemon grants::tests::preconsent_flags_author_grants test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:02.5866135Z PASS [ 0.021s] ( 348/1168) spt-daemon grants::tests::reserved_capabilities_refuse_even_when_granted test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:02.5994002Z PASS [ 0.028s] ( 349/1168) spt-daemon grants::tests::ungranted_escalates_granted_allows test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:02.6060859Z PASS [ 0.027s] ( 350/1168) 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-21T09:48:02.6061649Z PASS [ 0.033s] ( 351/1168) spt-daemon harnesshost::tests::mint_session_id_is_fresh_hex test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:02.6089200Z PASS [ 0.028s] ( 352/1168) 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-21T09:48:02.6127358Z PASS [ 0.030s] ( 353/1168) 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-21T09:48:02.6128329Z PASS [ 0.028s] ( 354/1168) 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-21T09:48:02.6149249Z PASS [ 0.019s] ( 355/1168) 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-21T09:48:02.6181191Z PASS [ 0.018s] ( 356/1168) 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-21T09:48:02.6206810Z PASS [ 0.497s] ( 357/1168) 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-21T09:48:02.6323010Z PASS [ 0.273s] ( 358/1168) 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-21T09:48:02.6328452Z LEAK [ 3.424s] ( 359/1168) 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-21T09:48:02.6869219Z PASS [ 0.190s] ( 360/1168) 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-21T09:48:02.7924406Z PASS [ 0.178s] ( 361/1168) 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-21T09:48:02.8018017Z PASS [ 0.182s] ( 362/1168) 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-21T09:48:02.8097749Z PASS [ 0.256s] ( 363/1168) 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-21T09:48:02.8163983Z PASS [ 0.215s] ( 364/1168) spt-daemon lifecycle::tests::crash_signoff_spares_recovered_self test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:02.8211280Z PASS [ 0.205s] ( 365/1168) 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-21T09:48:02.8214041Z PASS [ 0.211s] ( 366/1168) 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-21T09:48:02.8360157Z PASS [ 0.019s] ( 367/1168) 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-21T09:48:02.8377184Z PASS [ 0.217s] ( 368/1168) 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-21T09:48:02.8679130Z PASS [ 0.230s] ( 369/1168) 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-21T09:48:02.8681160Z PASS [ 0.252s] ( 370/1168) spt-daemon lifecycle::tests::orphan_watch_fires_on_dead_owner test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:02.8727552Z PASS [ 0.191s] ( 371/1168) 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-21T09:48:02.8915356Z PASS [ 0.256s] ( 372/1168) 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-21T09:48:02.9409257Z PASS [ 0.068s] ( 373/1168) 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-21T09:48:02.9786158Z PASS [ 0.158s] ( 374/1168) 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-21T09:48:02.9844130Z PASS [ 0.165s] ( 375/1168) 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-21T09:48:02.9846327Z PASS [ 0.149s] ( 376/1168) 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-21T09:48:02.9869059Z PASS [ 0.178s] ( 377/1168) 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-21T09:48:03.0009917Z PASS [ 0.105s] ( 378/1168) 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-21T09:48:03.0222195Z PASS [ 0.176s] ( 379/1168) spt-daemon linkhost::tests::run_action_relinks_drives_and_refuses test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:03.0376889Z PASS [ 0.097s] ( 380/1168) 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-21T09:48:03.0423842Z PASS [ 0.029s] ( 381/1168) spt-daemon livehost::tests::residency_classification test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:03.0674841Z PASS [ 0.075s] ( 382/1168) spt-daemon livehost::tests::reconcile_skips_an_offline_live_endpoint test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:03.0715494Z PASS [ 0.027s] ( 383/1168) spt-daemon machineid::tests::hash_is_domain_separated_and_stable test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:03.0845121Z PASS [ 0.021s] ( 384/1168) 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-21T09:48:03.0991759Z PASS [ 0.055s] ( 385/1168) 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-21T09:48:03.1086409Z PASS [ 0.032s] ( 386/1168) spt-daemon msg::tests::bytes_round_trip_through_payload test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:03.1163990Z PASS [ 0.032s] ( 387/1168) spt-daemon msg::tests::endpoint_input_frames_round_trip test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:03.1238351Z PASS [ 0.031s] ( 388/1168) 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-21T09:48:03.1247951Z PASS [ 0.022s] ( 389/1168) 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-21T09:48:03.1339516Z PASS [ 0.017s] ( 390/1168) 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-21T09:48:03.1477694Z PASS [ 0.022s] ( 391/1168) 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-21T09:48:03.1478429Z PASS [ 0.025s] ( 392/1168) spt-daemon msg::tests::output_envelope_round_trips test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:03.1542205Z PASS [ 0.018s] ( 393/1168) spt-daemon msg::tests::spawn_req_tolerates_unknown_field test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:03.1902341Z PASS [ 0.328s] ( 394/1168) 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-21T09:48:03.2520706Z PASS [ 0.099s] ( 395/1168) spt-daemon nethost::tests::host_binds_endpoint_to_node_identity test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:03.2521805Z PASS [ 0.452s] ( 396/1168) 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-21T09:48:03.2524570Z PASS [ 0.267s] ( 397/1168) 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-21T09:48:03.2689643Z PASS [ 0.285s] ( 398/1168) spt-daemon livehost::tests::reconcile_does_not_double_host test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:03.2698677Z PASS [ 0.273s] ( 399/1168) spt-daemon livehost::tests::reconcile_unhosts_on_offline_transition test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:03.2812467Z PASS [ 0.117s] ( 400/1168) 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-21T09:48:03.2935274Z PASS [ 0.038s] ( 401/1168) 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-21T09:48:03.3080797Z PASS [ 0.324s] ( 402/1168) 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-21T09:48:03.3812450Z PASS [ 0.512s] ( 403/1168) 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-21T09:48:03.4000873Z PASS [ 0.148s] ( 404/1168) spt-daemon nethost::tests::two_hosts_dial_over_loopback test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:03.4092179Z PASS [ 0.263s] ( 405/1168) 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-21T09:48:03.4485628Z PASS [ 0.141s] ( 406/1168) 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-21T09:48:03.4653678Z PASS [ 0.087s] ( 407/1168) 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-21T09:48:03.5799660Z PASS [ 0.312s] ( 408/1168) spt-daemon notif::tests::hidden_endpoint_boundary_surfaces_nothing test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:03.6005680Z PASS [ 14.767s] ( 409/1168) spt::contract_e2e live_agent_lifecycle_e2e test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:03.7132462Z PASS [ 0.265s] ( 410/1168) 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-21T09:48:03.7298317Z PASS [ 0.477s] ( 411/1168) 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-21T09:48:03.7306176Z PASS [ 0.445s] ( 412/1168) spt-daemon notif::tests::hidden_endpoint_is_never_the_target test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:03.7309791Z PASS [ 0.468s] ( 413/1168) 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-21T09:48:03.7642294Z PASS [ 0.034s] ( 414/1168) 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-21T09:48:03.7768398Z PASS [ 0.511s] ( 415/1168) 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-21T09:48:03.8046251Z PASS [ 0.074s] ( 416/1168) 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-21T09:48:03.8229685Z PASS [ 0.059s] ( 417/1168) 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-21T09:48:03.8233059Z PASS [ 0.046s] ( 418/1168) spt-daemon presence::tests::snapshot_loading_degrades_on_junk test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:03.8314245Z PASS [ 0.251s] ( 419/1168) 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-21T09:48:03.8351404Z PASS [ 0.012s] ( 420/1168) spt-daemon propagate::tests::classifier_maps_every_status_shape test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:03.8550305Z PASS [ 0.255s] ( 421/1168) 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-21T09:48:03.8720732Z PASS [ 0.067s] ( 422/1168) spt-daemon presence::tests::subnet_scope_gates_both_legs test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:03.9188776Z PASS [ 0.206s] ( 423/1168) spt-daemon notifsync::tests::non_member_subnet_record_never_materializes test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:03.9189494Z PASS [ 0.519s] ( 424/1168) spt-daemon notif::tests::resurface_delivers_undismissed_with_gates test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:03.9425036Z PASS [ 0.213s] ( 425/1168) 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-21T09:48:03.9458689Z PASS [ 0.537s] ( 426/1168) spt-daemon notif::tests::rollback_notif_is_loud_and_resurfaces test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:03.9736731Z PASS [ 0.508s] ( 427/1168) spt-daemon notif::tests::suppression_window_holds_cross_endpoint test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:03.9977576Z PASS [ 0.052s] ( 428/1168) 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-21T09:48:04.0030057Z PASS [ 0.030s] ( 429/1168) 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-21T09:48:04.0245490Z PASS [ 0.021s] ( 430/1168) 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-21T09:48:04.0390401Z PASS [ 0.015s] ( 431/1168) spt-daemon pump::tests::choreography_first_tick_primes_all_legs test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:04.0623566Z PASS [ 0.064s] ( 432/1168) 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-21T09:48:04.0686992Z PASS [ 0.030s] ( 433/1168) 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-21T09:48:04.0768267Z PASS [ 0.015s] ( 434/1168) 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-21T09:48:04.0826638Z PASS [ 0.014s] ( 435/1168) 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-21T09:48:04.0931669Z PASS [ 0.016s] ( 436/1168) spt-daemon pump::tests::choreography_wake_forces_only_that_worker test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:04.0972446Z PASS [ 0.015s] ( 437/1168) 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-21T09:48:04.1108799Z PASS [ 0.014s] ( 438/1168) spt-daemon pump::tests::peer_outcome_timeout_bubbles_ordinary_aborts test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:04.1334307Z PASS [ 0.022s] ( 439/1168) 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-21T09:48:04.1351604Z PASS [ 0.312s] ( 440/1168) spt-daemon psyrelay::tests::empty_and_oversize_bodies_drop_typed test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:04.1376057Z PASS [ 0.302s] ( 441/1168) spt-daemon psyrelay::tests::notify_without_live_endpoint_is_pending test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:04.1382880Z PASS [ 0.266s] ( 442/1168) spt-daemon psyrelay::tests::prose_only_relays_nothing test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:04.1387613Z PASS [ 0.284s] ( 443/1168) spt-daemon psyrelay::tests::null_stdout_driver_fails_the_guard test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:04.1615430Z PASS [ 0.068s] ( 444/1168) spt-daemon pump::tests::heartbeat_writes_and_advances test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:04.1650403Z PASS [ 0.030s] ( 445/1168) spt-daemon pump::tests::supervisor_backoff_doubles_caps_and_resets test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:04.1776118Z PASS [ 0.039s] ( 446/1168) 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-21T09:48:04.1816156Z PASS [ 0.049s] ( 447/1168) spt-daemon pump::tests::seeded_dial_order_fallback_and_writeback test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:04.1861788Z PASS [ 0.025s] ( 448/1168) spt-daemon reap::tests::reap_without_enroll_is_noop test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:04.1896170Z PASS [ 0.025s] ( 449/1168) spt-daemon reconcile::tests::active_node_wins test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:04.1934468Z PASS [ 0.016s] ( 450/1168) spt-daemon reconcile::tests::double_active_tiebreaks_deterministically test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:04.1990532Z PASS [ 0.017s] ( 451/1168) spt-daemon reconcile::tests::fallback_lowest_non_offline test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:04.2113082Z PASS [ 0.074s] ( 452/1168) 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-21T09:48:04.2123432Z PASS [ 0.026s] ( 453/1168) spt-daemon reconcile::tests::no_rows_reconciles_locally test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:04.2141375Z PASS [ 0.295s] ( 454/1168) spt-daemon psyrelay::tests::reply_without_target_is_dropped test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:04.2676181Z PASS [ 0.077s] ( 455/1168) spt-daemon registryhost::tests::admitted_feeds_stamp_the_heard_map test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:04.2791376Z PASS [ 0.080s] ( 456/1168) spt-daemon registryhost::tests::advertise_local_stamps_the_node_label test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:04.2885296Z PASS [ 0.095s] ( 457/1168) spt-daemon registryhost::tests::advertise_local_scans_and_respects_visibility test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:04.2912442Z PASS [ 0.459s] ( 458/1168) spt-daemon psyrelay::tests::notify_reaches_own_user_only test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:04.3193867Z PASS [ 0.107s] ( 459/1168) spt-daemon registryhost::tests::advertisement_carries_both_authored_blurb test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:04.3228902Z PASS [ 0.054s] ( 460/1168) 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-21T09:48:04.3426481Z PASS [ 0.130s] ( 461/1168) spt-daemon registryhost::tests::advertisement_carries_the_presence_datum test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:04.3455493Z PASS [ 0.057s] ( 462/1168) spt-daemon registryhost::tests::apply_node_labels_gates_and_merges test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:04.3456314Z PASS [ 0.131s] ( 463/1168) spt-daemon registryhost::tests::advertisement_follows_resting_transitions_epoch_bumped test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:04.3616007Z PASS [ 0.442s] ( 464/1168) spt-daemon psyrelay::tests::reply_relays_to_inbound_sender test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:04.3642720Z PASS [ 1.174s] ( 465/1168) spt-daemon nethost::tests::loopback_tunnel_backpressures_without_loss test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:04.3646194Z PASS [ 0.086s] ( 466/1168) 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-21T09:48:04.3734352Z PASS [ 0.082s] ( 467/1168) 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-21T09:48:04.3799088Z PASS [ 0.062s] ( 468/1168) 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-21T09:48:04.3845248Z PASS [ 0.039s] ( 469/1168) 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-21T09:48:04.3846211Z PASS [ 0.064s] ( 470/1168) 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-21T09:48:04.3859071Z PASS [ 0.040s] ( 471/1168) 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-21T09:48:04.4181574Z PASS [ 0.475s] ( 472/1168) spt-daemon psyrelay::tests::spoofed_routing_is_stripped_and_restamped test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:04.4216193Z PASS [ 0.077s] ( 473/1168) 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-21T09:48:04.4414115Z PASS [ 0.068s] ( 474/1168) 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-21T09:48:04.4441843Z PASS [ 0.080s] ( 475/1168) 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-21T09:48:04.4625883Z PASS [ 0.078s] ( 476/1168) spt-daemon relcache::tests::torn_or_corrupt_stage_offers_nothing test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:04.4634367Z PASS [ 0.083s] ( 477/1168) 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-21T09:48:04.4698797Z PASS [ 0.052s] ( 478/1168) spt-daemon release::tests::artifact_digest_mismatch_is_rejected test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:04.4711818Z PASS [ 0.086s] ( 479/1168) spt-daemon relcache::tests::stage_round_trips_and_restage_replaces test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:04.4725195Z PASS [ 1.682s] ( 480/1168) spt-daemon lifecycle::tests::pulse_tick_ingests_drop test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:04.4738897Z PASS [ 0.054s] ( 481/1168) 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-21T09:48:04.4815380Z PASS [ 0.040s] ( 482/1168) spt-daemon release::tests::channel_mismatch_is_rejected test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:04.4832159Z PASS [ 0.098s] ( 483/1168) 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-21T09:48:04.4837245Z PASS [ 0.040s] ( 484/1168) spt-daemon release::tests::expired_metadata_is_rejected test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:04.4981798Z PASS [ 0.036s] ( 485/1168) spt-daemon release::tests::hex_roundtrips test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:04.5002084Z PASS [ 9.830s] ( 486/1168) 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-21T09:48:04.5010254Z PASS [ 9.238s] ( 487/1168) spt::bin/spt cli::tests::purge_removes_every_record test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:04.5101628Z PASS [ 0.040s] ( 488/1168) spt-daemon release::tests::revoked_key_is_rejected test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:04.5138352Z PASS [ 0.041s] ( 489/1168) spt-daemon release::tests::shipped_builtin_table_is_well_formed test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:04.5234632Z PASS [ 0.053s] ( 490/1168) spt-daemon release::tests::production_policy_loads_fail_closed test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:04.5267200Z PASS [ 0.053s] ( 491/1168) spt-daemon release::tests::tampered_metadata_fails_signature test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:04.5283065Z PASS [ 0.065s] ( 492/1168) spt-daemon release::tests::non_monotonic_version_is_rollback test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:04.5302622Z PASS [ 0.049s] ( 493/1168) spt-daemon release::tests::untrusted_key_is_unknown test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:04.5369047Z PASS [ 0.054s] ( 494/1168) spt-daemon release::tests::update_set_artifact_mismatch_is_rejected test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:04.5430235Z PASS [ 0.045s] ( 495/1168) 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-21T09:48:04.5472766Z PASS [ 0.047s] ( 496/1168) 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-21T09:48:04.5501853Z PASS [ 0.049s] ( 497/1168) 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-21T09:48:04.5502585Z PASS [ 0.067s] ( 498/1168) 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-21T09:48:04.5538612Z PASS [ 0.044s] ( 499/1168) spt-daemon release::tests::valid_release_verifies_and_artifact_matches test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:04.5622493Z PASS [ 0.032s] ( 500/1168) 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-21T09:48:04.5656162Z PASS [ 0.039s] ( 501/1168) 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-21T09:48:04.5762274Z PASS [ 0.048s] ( 502/1168) 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-21T09:48:04.5767334Z PASS [ 0.062s] ( 503/1168) spt-daemon release::tests::verify_detached_signs_raw_artifact_bytes test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:04.5768004Z PASS [ 0.029s] ( 504/1168) 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-21T09:48:04.5786180Z PASS [ 0.028s] ( 505/1168) spt-daemon resting::tests::knob_chain_resolves_global_node_endpoint test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:04.5888530Z PASS [ 0.046s] ( 506/1168) 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-21T09:48:04.5921307Z PASS [ 0.068s] ( 507/1168) 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-21T09:48:04.5982704Z PASS [ 0.036s] ( 508/1168) spt-daemon resting::tests::transition_table_matches_the_context_model test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:04.6003470Z PASS [ 0.034s] ( 509/1168) 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-21T09:48:04.6080683Z PASS [ 0.054s] ( 510/1168) 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-21T09:48:04.6094551Z PASS [ 0.033s] ( 511/1168) spt-daemon seedmap::tests::put_refreshes_existing test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:04.6146973Z PASS [ 0.038s] ( 512/1168) spt-daemon seedmap::tests::put_then_take_consumes_once test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:04.6191978Z PASS [ 0.042s] ( 513/1168) 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-21T09:48:04.6236073Z PASS [ 0.044s] ( 514/1168) spt-daemon seedmap::tests::stop_op_acks_then_serve_returns test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:04.6254100Z PASS [ 0.034s] ( 515/1168) spt-daemon seedproofx::grace_tests::grade_truth_table test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:04.6288279Z PASS [ 0.040s] ( 516/1168) spt-daemon seedmap::tests::take_absent_is_none test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:04.6291508Z PASS [ 0.031s] ( 517/1168) 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-21T09:48:04.6313180Z PASS [ 0.031s] ( 518/1168) 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-21T09:48:04.6352960Z PASS [ 0.271s] ( 519/1168) spt-daemon relay::tests::run_honors_stop test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:04.6355013Z PASS [ 0.027s] ( 520/1168) spt-daemon seedproofx::roster_tests::empty_roster_frame_round_trips test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:04.6399927Z PASS [ 0.031s] ( 521/1168) 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-21T09:48:04.6430260Z PASS [ 0.028s] ( 522/1168) spt-daemon seedproofx::roster_tests::malformed_roster_frame_rejected test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:04.6457857Z PASS [ 0.027s] ( 523/1168) spt-daemon seedproofx::roster_tests::roster_frame_round_trips test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:04.6492260Z PASS [ 0.112s] ( 524/1168) 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-21T09:48:04.6522704Z PASS [ 0.027s] ( 525/1168) 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-21T09:48:04.6565830Z PASS [ 0.028s] ( 526/1168) 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-21T09:48:04.6602038Z PASS [ 0.031s] ( 527/1168) 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-21T09:48:04.6638352Z PASS [ 0.032s] ( 528/1168) spt-daemon shellchan::tests::drive_frame_shape_mirrors_sensory test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:04.6660069Z PASS [ 0.043s] ( 529/1168) 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-21T09:48:04.6690089Z PASS [ 0.034s] ( 530/1168) spt-daemon shellchan::tests::frames_compose_and_stamp_roundtrips test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:04.6727491Z PASS [ 0.037s] ( 531/1168) spt-daemon shellchan::tests::sensory_text_file_frames_shape test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:04.6759521Z PASS [ 0.036s] ( 532/1168) spt-daemon shellchan::tests::vocab_check_bounds_ops_and_args test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:04.6991451Z PASS [ 0.056s] ( 533/1168) 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-21T09:48:04.7290864Z PASS [ 0.080s] ( 534/1168) 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-21T09:48:04.7303742Z PASS [ 0.058s] ( 535/1168) spt-daemon shellhost::tests::link_key_and_frame_mac_roundtrip test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:04.7733842Z PASS [ 0.221s] ( 536/1168) spt-daemon resting::tests::rest_edges_cascade_shells_with_divergence test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:04.7735200Z PASS [ 0.410s] ( 537/1168) spt-daemon relay::tests::respawn_loses_no_spooled_message test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:04.7739306Z PASS [ 0.097s] ( 538/1168) spt-daemon shellwake::tests::backoff_curve_doubles_to_the_cap test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:04.7742945Z PASS [ 0.108s] ( 539/1168) spt-daemon shellhost::tests::launch_fails_closed_on_bad_templates test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:04.7770644Z PASS [ 0.113s] ( 540/1168) 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-21T09:48:05.2826233Z PASS [ 0.511s] ( 541/1168) 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-21T09:48:05.2938675Z PASS [ 0.625s] ( 542/1168) 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-21T09:48:05.2979017Z PASS [ 0.650s] ( 543/1168) spt-daemon shelldisc::tests::discovery_own_plus_broadcast_gated_instantiable test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:05.2985043Z PASS [ 0.566s] ( 544/1168) 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-21T09:48:05.3026158Z PASS [ 0.526s] ( 545/1168) spt-daemon sync::tests::gate_decision_table test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:05.3184330Z PASS [ 0.585s] ( 546/1168) spt-daemon shellwake::tests::reconcile_resolves_profile_overlay test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:05.3292157Z PASS [ 0.033s] ( 547/1168) spt-daemon translation::tests::key_cmd_parses_each_wire_shape test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:05.3292910Z PASS [ 0.033s] ( 548/1168) 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-21T09:48:05.3334253Z PASS [ 0.029s] ( 549/1168) spt-daemon translation::tests::key_to_bytes_send_keys_map test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:05.3342840Z PASS [ 0.020s] ( 550/1168) 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-21T09:48:05.3498031Z PASS [ 0.019s] ( 551/1168) spt-daemon transport::tests::local_socket_rejects_wrong_role test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:05.3596097Z PASS [ 0.029s] ( 552/1168) 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-21T09:48:05.3596987Z PASS [ 0.028s] ( 553/1168) spt-daemon tunnelhub::tests::clear_evicts_the_entry test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:05.3849141Z PASS [ 0.050s] ( 554/1168) spt-daemon tunnelhub::tests::dead_generation_stream_is_never_surfaced test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:05.4637761Z PASS [ 0.116s] ( 555/1168) spt-daemon tunnelhub::tests::entries_are_per_owner test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:05.4641543Z PASS [ 0.690s] ( 556/1168) spt-daemon shellwake::tests::watcher_opcode_exit_fires_resolution_once test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:05.4737065Z PASS [ 0.116s] ( 557/1168) 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-21T09:48:05.4838787Z PASS [ 0.124s] ( 558/1168) 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-21T09:48:05.4940541Z PASS [ 0.109s] ( 559/1168) spt-daemon update::tests::apply_refuses_non_brain_only_plan test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:05.5022686Z PASS [ 0.038s] ( 560/1168) 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-21T09:48:05.5052009Z PASS [ 0.031s] ( 561/1168) 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-21T09:48:05.5053226Z PASS [ 0.041s] ( 562/1168) 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-21T09:48:05.5356044Z PASS [ 0.050s] ( 563/1168) 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-21T09:48:05.5463890Z PASS [ 0.052s] ( 564/1168) 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-21T09:48:05.5498636Z PASS [ 0.047s] ( 565/1168) 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-21T09:48:05.5499365Z PASS [ 0.044s] ( 566/1168) spt-daemon wan::tests::origin_user_backed_matrix test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:05.5624467Z PASS [ 0.057s] ( 567/1168) 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-21T09:48:05.5739189Z PASS [ 0.027s] ( 568/1168) spt-daemon xfer::tests::resolve_under_confines_to_root test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:05.5753791Z PASS [ 0.803s] ( 569/1168) 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-21T09:48:05.5787696Z PASS [ 0.918s] ( 570/1168) 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-21T09:48:05.5807172Z PASS [ 0.047s] ( 571/1168) 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-21T09:48:05.5816355Z PASS [ 0.929s] ( 572/1168) 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-21T09:48:05.6172871Z PASS [ 0.035s] ( 573/1168) spt-daemon::netbroker netless_broker_probes_gracefully test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:05.6227888Z PASS [ 1.483s] ( 574/1168) spt-daemon reap::tests::job_reaps_enrolled_child_and_grandchild test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:05.6982751Z PASS [ 0.121s] ( 575/1168) spt-daemon::netbroker broker_owns_endpoint_and_reports_status test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:05.7473758Z PASS [ 0.113s] ( 576/1168) spt-daemon::netbroker unknown_net_frame_is_reported_not_fatal test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:05.7741889Z PASS [ 0.200s] ( 577/1168) spt-daemon::netbroker brain_dials_second_broker_over_loopback test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:05.7999376Z PASS [ 1.099s] ( 578/1168) spt-daemon shellwake::tests::reconcile_flips_watchers_with_instance_state test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:05.8371745Z PASS [ 0.252s] ( 579/1168) 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-21T09:48:06.0852880Z PASS [ 1.428s] ( 580/1168) 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-21T09:48:06.1496201Z PASS [ 0.595s] ( 581/1168) spt-daemon::access whitelist_refuses_exempts_replies_and_admits_listed test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:06.2087763Z PASS [ 0.435s] ( 582/1168) 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-21T09:48:06.2995597Z PASS [ 0.603s] ( 583/1168) spt-daemon::netstream sender_brain_restart_redrive_is_exactly_once test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:06.3620088Z PASS [ 0.631s] ( 584/1168) 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-21T09:48:06.3704467Z PASS [ 0.807s] ( 585/1168) spt-daemon::mesh staggered_offliner_still_meshes test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:06.3951327Z PASS [ 0.251s] ( 586/1168) spt-daemon::propagate rollback_offer_is_rejected_before_any_fetch test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:06.4848112Z PASS [ 1.711s] ( 587/1168) 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-21T09:48:06.5702480Z PASS [ 0.948s] ( 588/1168) 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-21T09:48:06.6091353Z PASS [ 0.248s] ( 589/1168) spt-daemon::propagate untrusted_origin_gets_no_offer test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:06.6127876Z PASS [ 0.308s] ( 590/1168) 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-21T09:48:06.6295153Z PASS [ 1.079s] ( 591/1168) 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-21T09:48:06.7502996Z PASS [ 0.664s] ( 592/1168) 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-21T09:48:06.7917818Z PASS [ 0.423s] ( 593/1168) spt-daemon::propagate update_set_propagates_selected_platform_artifact test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:06.7971681Z PASS [ 0.189s] ( 594/1168) spt-daemon::reseed benign_offliner_is_reseeded_across_a_rotation test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:06.8811307Z PASS [ 1.598s] ( 595/1168) spt-daemon sync::tests::reconcile_driver_structurally_excludes_live_role test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:06.8918720Z PASS [ 0.682s] ( 596/1168) 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-21T09:48:06.9227810Z PASS [ 0.172s] ( 597/1168) spt-daemon::rosterprop roster_exchange_never_leaks_unproven_subnets test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:06.9233759Z PASS [ 0.132s] ( 598/1168) spt-daemon::rosterprop roster_propagates_transitively_on_connect test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:06.9464123Z PASS [ 0.338s] ( 599/1168) 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-21T09:48:06.9522975Z PASS [ 0.155s] ( 600/1168) 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-21T09:48:07.0117412Z PASS [ 0.121s] ( 601/1168) spt-daemon::seedproofx proven_verdict_is_the_shared_set test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:07.2320046Z PASS [ 0.662s] ( 602/1168) 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-21T09:48:07.2658423Z PASS [ 1.972s] ( 603/1168) spt-daemon sync::tests::select_refs_scopes_two_tiers test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:07.4342056Z PASS [ 1.855s] ( 604/1168) 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-21T09:48:07.4721971Z PASS [ 0.460s] ( 605/1168) spt-daemon::wanmsg receiver_restart_replays_feed_without_double_delivery test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:07.5076164Z PASS [ 0.242s] ( 606/1168) 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-21T09:48:07.5171395Z PASS [ 0.009s] ( 607/1168) spt-live context::tests::direct_always_writes test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:07.5808072Z PASS [ 0.064s] ( 608/1168) spt-live context::tests::identified_write_stamps_advancing_vector test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:07.5913478Z PASS [ 0.010s] ( 609/1168) spt-live context::tests::llm_over_llm_writes test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:07.6010452Z PASS [ 0.010s] ( 610/1168) spt-live context::tests::llm_past_window_writes test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:07.6163098Z PASS [ 0.015s] ( 611/1168) spt-live context::tests::llm_within_window_suppressed test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:07.6409915Z PASS [ 0.025s] ( 612/1168) spt-live context::tests::pre_identity_write_stamps_v1_shape test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:07.6575376Z PASS [ 0.016s] ( 613/1168) spt-live context::tests::write_context_suppresses_stale_llm test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:07.7450100Z PASS [ 0.272s] ( 614/1168) spt-daemon::xfer push_survives_target_brain_restart_exactly_once test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:07.7535330Z PASS [ 0.521s] ( 615/1168) 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-21T09:48:07.7536213Z PASS [ 0.319s] ( 616/1168) 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-21T09:48:07.7716005Z PASS [ 0.018s] ( 617/1168) spt-live digest::tests::missing_source_file_is_read_error test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:07.7869618Z PASS [ 0.015s] ( 618/1168) spt-live digest::tests::no_source_errors test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:07.8347910Z PASS [ 0.091s] ( 619/1168) spt-live digest::tests::extracts_records_from_the_located_source test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:07.8381574Z PASS [ 0.085s] ( 620/1168) spt-live digest::tests::falls_back_to_history_locate_template test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:07.8634981Z PASS [ 0.074s] ( 621/1168) spt-live echo::tests::echo_child_is_recursion_guarded test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:07.8783447Z PASS [ 0.016s] ( 622/1168) spt-live echo::tests::provenance_is_stamped test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:07.9036428Z PASS [ 0.066s] ( 623/1168) spt-live echo::tests::echo_consumes_history_and_writes_commune test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:07.9043230Z PASS [ 0.065s] ( 624/1168) spt-live echo::tests::echo_nonzero_errors test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:07.9658633Z PASS [ 0.065s] ( 625/1168) spt-live history::tests::fetcher_yields_records test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:07.9769327Z PASS [ 0.011s] ( 626/1168) spt-live history::tests::missing_fetcher_field_errors test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:07.9780761Z PASS [ 0.074s] ( 627/1168) spt-live history::tests::locate_normalize_reads_and_normalizes test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:07.9886198Z PASS [ 0.011s] ( 628/1168) spt-live history::tests::native_missing_log_is_empty test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:07.9961632Z PASS [ 0.018s] ( 629/1168) spt-live history::tests::native_reads_logged_records test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:08.0787058Z PASS [ 12.573s] ( 630/1168) 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-21T09:48:08.2042337Z LEAK [ 0.545s] ( 631/1168) spt-live digest::tests::extractor_timeout_errors test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:08.2162459Z PASS [ 0.013s] ( 632/1168) spt-live ingest::tests::no_drops_is_empty test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:08.4226231Z LEAK [ 0.544s] ( 633/1168) spt-live history::tests::fetcher_timeout_errors test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:08.7389574Z PASS [ 2.341s] ( 634/1168) spt-daemon::pump pump_and_dispatch_self_drive_the_subnet test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:08.7490415Z PASS [ 0.012s] ( 635/1168) spt-live inject::tests::long_body_is_capped test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:08.7612445Z PASS [ 0.012s] ( 636/1168) spt-live inject::tests::missing_perch_is_best_effort test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:08.7822376Z PASS [ 0.021s] ( 637/1168) spt-live inject::tests::tap_appends_a_context_entry test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:08.7937244Z PASS [ 0.011s] ( 638/1168) spt-live outbound::tests::empty_body_parses_to_empty_intent test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:08.8095345Z PASS [ 0.015s] ( 639/1168) spt-live outbound::tests::malformed_and_chunk_lines_are_skipped test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:08.8138264Z PASS [ 0.597s] ( 640/1168) spt-live ingest::tests::stale_commune_suppressed_but_deleted test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:08.8334167Z PASS [ 0.024s] ( 641/1168) spt-live outbound::tests::non_authorable_types_are_ignored test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:08.8349676Z PASS [ 0.022s] ( 642/1168) spt-live outbound::tests::parses_reply_and_notify_in_order test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:08.8364010Z PASS [ 0.840s] ( 643/1168) spt-live ingest::tests::commune_drop_is_ingested_and_deleted test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:08.8428725Z PASS [ 0.009s] ( 644/1168) spt-live outbound::tests::prose_only_yields_nothing test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:08.8455093Z PASS [ 0.011s] ( 645/1168) spt-live outbound::tests::spoofed_routing_attrs_are_unrepresentable test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:08.8525703Z PASS [ 0.016s] ( 646/1168) spt-live psyche::tests::prompt_includes_time_and_event test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:08.8579303Z PASS [ 0.015s] ( 647/1168) spt-live psyche::tests::prompt_without_event test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:08.8658651Z PASS [ 0.013s] ( 648/1168) spt-live pulse::tests::echo_gate_fires_exactly_once test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:08.8851182Z PASS [ 2.253s] ( 649/1168) spt-daemon::reseed revoked_node_is_denied_and_never_reseeded test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:08.8854891Z PASS [ 0.018s] ( 650/1168) spt-live pulse::tests::tick_reports_idle test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:08.9028936Z PASS [ 0.056s] ( 651/1168) 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-21T09:48:08.9314165Z PASS [ 0.851s] ( 652/1168) spt-live ingest::tests::ingest_never_writes_the_live_role test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:09.0912656Z PASS [ 2.210s] ( 653/1168) spt-daemon::seedproofx no_shared_subnet_is_dropped test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:09.0914963Z PASS [ 3.257s] ( 654/1168) spt-daemon::presence presence_survives_brain_restart_with_cursor_resume test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:09.1169820Z PASS [ 1.125s] ( 655/1168) spt-live ingest::tests::both_drops_ingested test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:09.1362029Z PASS [ 2.214s] ( 656/1168) spt-daemon::seedproofx wrong_seed_is_dropped test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:09.1545584Z PASS [ 3.350s] ( 657/1168) 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-21T09:48:09.1835808Z PASS [ 0.031s] ( 658/1168) spt-live resume::tests::missing_key_errors_before_spawn test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:09.1861392Z PASS [ 0.095s] ( 659/1168) spt-live resume::tests::continue_existing_resumes_session test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:09.2260968Z PASS [ 0.036s] ( 660/1168) spt-live signoff::tests::echo_precedes_signoff_compose test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:09.2416430Z PASS [ 0.017s] ( 661/1168) spt-live signoff::tests::missing_session_skips_echo test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:09.2437140Z PASS [ 0.103s] ( 662/1168) spt-live resume::tests::fresh_with_preload_launches_preloaded test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:09.2723178Z PASS [ 0.024s] ( 663/1168) spt-live signoff::tests::recovered_self_is_not_signed_off test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:09.2876288Z PASS [ 0.040s] ( 664/1168) spt-live signoff::tests::stale_signoff_swept test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:09.3500531Z PASS [ 2.404s] ( 665/1168) spt-daemon::sync torn_pull_recovers_by_repulling test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:09.3619835Z PASS [ 0.100s] ( 666/1168) spt-live turn::tests::empty_stdout_is_an_error test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:09.3783644Z PASS [ 0.015s] ( 667/1168) spt-msg deliver::tests::deferred_send_validates test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:09.3785926Z PASS [ 0.098s] ( 668/1168) spt-live turn::tests::turn_captures_stdout test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:09.5285684Z PASS [ 0.177s] ( 669/1168) 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-21T09:48:09.5639486Z PASS [ 0.185s] ( 670/1168) spt-msg deliver::tests::offline_existing_perch_spools test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:09.5963753Z PASS [ 0.712s] ( 671/1168) spt-live reconcile::tests::no_conflict_is_a_noop test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:09.6148718Z PASS [ 0.019s] ( 672/1168) spt-msg emit::tests::anonymous_still_enveloped test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:09.6267709Z PASS [ 0.249s] ( 673/1168) spt-msg deliver::tests::online_delivers_via_tcp_without_spooling test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:09.6434073Z PASS [ 0.027s] ( 674/1168) spt-msg emit::tests::multiline_body_escapes_and_round_trips test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:09.6480263Z PASS [ 0.021s] ( 675/1168) 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-21T09:48:09.6567489Z PASS [ 0.014s] ( 676/1168) spt-msg emit::tests::structural_renders_msg_envelope test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:09.6643957Z PASS [ 0.013s] ( 677/1168) 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-21T09:48:09.6718122Z PASS [ 0.015s] ( 678/1168) 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-21T09:48:09.6718973Z PASS [ 0.011s] ( 679/1168) spt-msg emit::tests::whole_render_never_chunks test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:09.6946753Z PASS [ 0.132s] ( 680/1168) spt-msg deliver::tests::send_outcome_mapping test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:09.8299568Z PASS [ 0.157s] ( 681/1168) spt-msg listener::tests::bind_registers_and_round_trips test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:09.8620132Z PASS [ 0.189s] ( 682/1168) spt-msg listener::tests::blocking_accepts_within_window test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:09.9260378Z PASS [ 1.068s] ( 683/1168) spt-live pulse::tests::tick_ingests_drops test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:09.9440062Z PASS [ 0.249s] ( 684/1168) spt-msg listener::tests::blocking_times_out_when_idle test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:09.9976431Z PASS [ 0.168s] ( 685/1168) spt-msg listener::tests::drop_unregisters_address test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:10.0436140Z PASS [ 1.162s] ( 686/1168) spt-live reconcile::tests::failed_turn_preserves_everything test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:10.1415160Z PASS [ 1.212s] ( 687/1168) spt-live reconcile::tests::suppressed_write_preserves_artifacts test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:10.2067782Z PASS [ 0.280s] ( 688/1168) spt-msg ready::tests::recv_gets_live_tcp_message test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:10.2074728Z PASS [ 0.346s] ( 689/1168) spt-msg ready::tests::backlog_drains_on_start test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:10.2215535Z PASS [ 0.015s] ( 690/1168) spt-msg ring::tests::ring_no_perch test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:10.2276235Z PASS [ 1.807s] ( 691/1168) spt-live ingest::tests::two_slice_drop_routes_per_tier test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:10.2351033Z PASS [ 0.008s] ( 692/1168) spt-msg wire::tests::decode_rejects_overrunning_from_len test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:10.2442118Z PASS [ 0.009s] ( 693/1168) spt-msg wire::tests::encode_decode_round_trips_structural test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:10.2499744Z PASS [ 0.306s] ( 694/1168) spt-msg ready::tests::soft_cleanup_preserves_spool_and_info test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:10.2526621Z PASS [ 0.009s] ( 695/1168) spt-msg wire::tests::encode_empty_from_is_anonymous test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:10.2588969Z PASS [ 0.009s] ( 696/1168) spt-msg wire::tests::frame_round_trips_over_loopback test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:10.2624264Z PASS [ 0.010s] ( 697/1168) spt-msg wire::tests::oversized_length_prefix_rejected test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:10.2653530Z PASS [ 0.267s] ( 698/1168) spt-msg ready::tests::start_ledgers_a_boot_session_row test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:10.2683989Z PASS [ 0.009s] ( 699/1168) spt-msg wire::tests::typed_event_body_rides_verbatim test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:10.3009635Z PASS [ 0.257s] ( 700/1168) spt-msg ready::tests::start_registers_resolvable_perch test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:10.3076283Z PASS [ 1.216s] ( 701/1168) spt-live resume::tests::download_composes_two_tiers test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:10.3213549Z PASS [ 0.020s] ( 702/1168) 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-21T09:48:10.3252375Z PASS [ 0.018s] ( 703/1168) spt-net net::attach::tests::record_split_across_chunks_reassembles test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:10.3271568Z PASS [ 0.058s] ( 704/1168) spt-net net::attach::tests::attach_intents_round_trip test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:10.3366321Z PASS [ 0.016s] ( 705/1168) 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-21T09:48:10.3391913Z PASS [ 0.014s] ( 706/1168) 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-21T09:48:10.3492855Z PASS [ 0.013s] ( 707/1168) 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-21T09:48:10.3669049Z PASS [ 0.017s] ( 708/1168) spt-net net::mesh::seedproof::tests::cross_connection_replay_fails test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:10.3813361Z PASS [ 0.014s] ( 709/1168) spt-net net::mesh::seedproof::tests::forged_proof_fails test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:10.3941052Z PASS [ 0.013s] ( 710/1168) 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-21T09:48:10.4064097Z PASS [ 0.012s] ( 711/1168) 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-21T09:48:10.4091646Z PASS [ 0.082s] ( 712/1168) spt-net net::endpoint::tests::endpoint_id_binds_to_identity test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:10.4190597Z PASS [ 0.013s] ( 713/1168) 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-21T09:48:10.4229170Z PASS [ 0.014s] ( 714/1168) spt-net net::mesh::seedproof::tests::mutual_requires_both_sides test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:10.4310242Z PASS [ 0.012s] ( 715/1168) 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-21T09:48:10.4341380Z PASS [ 0.011s] ( 716/1168) 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-21T09:48:10.4431634Z PASS [ 0.012s] ( 717/1168) spt-net net::mesh::seedproof::tests::wrong_epoch_fails test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:10.4457905Z PASS [ 0.012s] ( 718/1168) spt-net net::mesh::seedproof::tests::wrong_subnet_fails test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:10.4546883Z PASS [ 0.011s] ( 719/1168) spt-net net::notif::tests::forged_origin_field_is_inert test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:10.4571340Z PASS [ 0.118s] ( 720/1168) spt-net net::endpoint::tests::two_endpoints_loopback_echo test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:10.4572911Z PASS [ 0.011s] ( 721/1168) 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-21T09:48:10.4660620Z PASS [ 0.011s] ( 722/1168) spt-net net::notif::tests::record_split_across_chunks_reassembles test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:10.4706512Z PASS [ 0.013s] ( 723/1168) 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-21T09:48:10.4731255Z PASS [ 0.016s] ( 724/1168) 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-21T09:48:10.4822977Z PASS [ 0.012s] ( 725/1168) 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-21T09:48:12.2947348Z PASS [ 1.816s] ( 726/1168) 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-21T09:48:15.3963564Z PASS [ 4.914s] ( 727/1168) 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-21T09:48:15.4282718Z PASS [ 6.526s] ( 728/1168) spt-live reconcile::tests::reconcile_merges_and_clears test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:15.4322379Z PASS [ 3.139s] ( 729/1168) 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-21T09:48:15.4442326Z PASS [ 0.047s] ( 730/1168) spt-net net::pairing::ntp::tests::unreachable_server_falls_back test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:15.4553431Z PASS [ 5.929s] ( 731/1168) spt-msg deliver::tests::recycled_pid_address_does_not_misdeliver test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:15.4557618Z PASS [ 0.027s] ( 732/1168) 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-21T09:48:15.4588765Z PASS [ 0.030s] ( 733/1168) 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-21T09:48:15.4650226Z PASS [ 0.021s] ( 734/1168) spt-net net::pairing::ratelimit::tests::backoff_is_per_subnet test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:15.4786880Z PASS [ 5.271s] ( 735/1168) 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-21T09:48:15.4945006Z PASS [ 0.039s] ( 736/1168) 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-21T09:48:15.4988739Z PASS [ 0.035s] ( 737/1168) 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-21T09:48:15.5025280Z PASS [ 0.045s] ( 738/1168) spt-net net::pairing::ratelimit::tests::failures_impose_exponential_backoff test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:15.5097026Z PASS [ 0.044s] ( 739/1168) spt-net net::pairing::ratelimit::tests::success_clears_accumulated_backoff test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:15.5148920Z PASS [ 0.030s] ( 740/1168) 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-21T09:48:15.5212535Z PASS [ 0.027s] ( 741/1168) 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-21T09:48:15.5347212Z PASS [ 0.035s] ( 742/1168) 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-21T09:48:15.5347989Z PASS [ 0.040s] ( 743/1168) spt-net net::pairing::rendezvous::tests::token_is_deterministic test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:15.5421825Z PASS [ 0.032s] ( 744/1168) 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-21T09:48:15.5460377Z PASS [ 5.075s] ( 745/1168) 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-21T09:48:15.5935422Z PASS [ 5.450s] ( 746/1168) spt-msg ring::tests::ring_gets_reply_and_cleans_up test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:15.6036553Z PASS [ 0.073s] ( 747/1168) 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-21T09:48:15.6311966Z PASS [ 0.122s] ( 748/1168) 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-21T09:48:15.6415357Z PASS [ 0.104s] ( 749/1168) spt-net net::pairing::spake::tests::stale_epoch_fails test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:15.6525795Z PASS [ 0.115s] ( 750/1168) spt-net net::pairing::spake::tests::stale_step_fails test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:15.6723172Z PASS [ 0.041s] ( 751/1168) 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-21T09:48:15.6773152Z PASS [ 0.135s] ( 752/1168) spt-net net::pairing::spake::tests::substituted_pubkey_fails test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:15.6782708Z PASS [ 0.135s] ( 753/1168) spt-net net::pairing::spake::tests::tampered_tag_fails test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:15.6841229Z PASS [ 0.045s] ( 754/1168) spt-net net::pairing::totp::tests::debug_redacts_seed test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:15.6862068Z PASS [ 0.036s] ( 755/1168) spt-net net::pairing::totp::tests::generated_seeds_are_distinct test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:15.6998965Z PASS [ 5.437s] ( 756/1168) spt-msg::killer_quickstart offline_then_online_delivers_backlog test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:15.7043199Z PASS [ 0.032s] ( 757/1168) 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-21T09:48:15.7122784Z PASS [ 9.228s] ( 758/1168) 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-21T09:48:15.7136291Z PASS [ 0.037s] ( 759/1168) 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-21T09:48:15.7156429Z PASS [ 0.039s] ( 760/1168) 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-21T09:48:15.7215275Z PASS [ 6.609s] ( 761/1168) 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-21T09:48:15.7220662Z PASS [ 0.127s] ( 762/1168) spt-net net::pairing::spake::tests::wrong_subnet_fails test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:15.7256971Z PASS [ 0.040s] ( 763/1168) 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-21T09:48:15.7274381Z PASS [ 0.136s] ( 764/1168) 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-21T09:48:15.7295491Z PASS [ 0.030s] ( 765/1168) 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-21T09:48:15.7305193Z PASS [ 0.045s] ( 766/1168) 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-21T09:48:15.7328841Z PASS [ 0.028s] ( 767/1168) 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-21T09:48:15.7334745Z PASS [ 0.021s] ( 768/1168) 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-21T09:48:15.7443506Z PASS [ 0.030s] ( 769/1168) 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-21T09:48:15.7505280Z PASS [ 0.035s] ( 770/1168) spt-net net::pairing::transcript::tests::message_order_is_bound test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:15.7516601Z PASS [ 0.030s] ( 771/1168) 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-21T09:48:15.7672300Z PASS [ 0.040s] ( 772/1168) 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-21T09:48:15.7737918Z PASS [ 0.042s] ( 773/1168) 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-21T09:48:15.7856162Z PASS [ 0.051s] ( 774/1168) 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-21T09:48:15.7908318Z PASS [ 0.024s] ( 775/1168) 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-21T09:48:15.7993621Z PASS [ 5.578s] ( 776/1168) spt-msg ring::tests::ring_timeout_cleans_up test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:15.8040956Z PASS [ 0.033s] ( 777/1168) spt-net net::registry::tests::distinct_nodes_are_separate_instances test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:15.8063848Z PASS [ 0.021s] ( 778/1168) 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-21T09:48:15.8108884Z PASS [ 20.578s] ( 779/1168) 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-21T09:48:15.8156339Z PASS [ 0.025s] ( 780/1168) 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-21T09:48:15.8193803Z PASS [ 0.019s] ( 781/1168) 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-21T09:48:15.8205161Z PASS [ 5.554s] ( 782/1168) 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-21T09:48:15.8282453Z PASS [ 0.024s] ( 783/1168) spt-net net::registry::tests::exclusion_prunes_cross_subnet_ambiguity test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:15.8309938Z PASS [ 0.022s] ( 784/1168) 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-21T09:48:15.8337895Z PASS [ 0.020s] ( 785/1168) 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-21T09:48:15.8348306Z PASS [ 0.019s] ( 786/1168) spt-net net::registry::tests::join_fresh_id_is_inserted test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:15.8445091Z PASS [ 0.026s] ( 787/1168) 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-21T09:48:15.8455748Z PASS [ 0.026s] ( 788/1168) 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-21T09:48:15.8487066Z PASS [ 0.021s] ( 789/1168) spt-net net::registry::tests::newer_epoch_supersedes_same_node test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:15.8523731Z PASS [ 0.021s] ( 790/1168) 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-21T09:48:15.8544510Z PASS [ 0.023s] ( 791/1168) 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-21T09:48:15.8592499Z PASS [ 0.024s] ( 792/1168) 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-21T09:48:15.8609921Z PASS [ 0.016s] ( 793/1168) 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-21T09:48:15.8707765Z PASS [ 0.026s] ( 794/1168) spt-net net::registry::tests::registry_serde_roundtrips test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:15.8752242Z PASS [ 0.026s] ( 795/1168) spt-net net::registry::tests::rename_collision_refuses_whole_ripple test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:15.8800890Z PASS [ 0.027s] ( 796/1168) 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-21T09:48:15.9017348Z PASS [ 0.048s] ( 797/1168) 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-21T09:48:15.9243870Z PASS [ 0.064s] ( 798/1168) 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-21T09:48:15.9283129Z PASS [ 0.063s] ( 799/1168) spt-net net::registry::tests::resolve_across_unique_id_resolves test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:15.9302279Z PASS [ 0.203s] ( 800/1168) spt-net net::pairing::wire::tests::busy_subnet_refuses_ceremony test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:15.9317900Z PASS [ 0.049s] ( 801/1168) 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-21T09:48:15.9321002Z PASS [ 0.045s] ( 802/1168) spt-net net::registry::tests::resolve_prefers_local_instance test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:15.9321632Z PASS [ 0.055s] ( 803/1168) spt-net net::registry::tests::resolve_multiple_live_nodes_refuses test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:15.9322258Z PASS [ 0.027s] ( 804/1168) 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-21T09:48:15.9336018Z PASS [ 0.183s] ( 805/1168) spt-net net::pairing::wire::tests::unknown_subnet_is_rejected test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:15.9337070Z PASS [ 0.189s] ( 806/1168) spt-net net::pairing::wire::tests::stale_step_is_rejected test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:15.9458499Z PASS [ 0.021s] ( 807/1168) 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-21T09:48:15.9483659Z PASS [ 0.024s] ( 808/1168) 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-21T09:48:15.9529425Z PASS [ 0.026s] ( 809/1168) 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-21T09:48:15.9574935Z PASS [ 0.031s] ( 810/1168) spt-net net::registry::tests::resource_projection_threads_node_label test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:15.9586937Z PASS [ 0.034s] ( 811/1168) spt-net net::registry::tests::suspended_is_addressable_and_roundtrips test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:15.9600041Z PASS [ 0.035s] ( 812/1168) 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-21T09:48:15.9831992Z PASS [ 0.038s] ( 813/1168) 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-21T09:48:15.9837301Z PASS [ 0.045s] ( 814/1168) 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-21T09:48:15.9854179Z PASS [ 0.046s] ( 815/1168) 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-21T09:48:15.9855217Z PASS [ 0.037s] ( 816/1168) 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-21T09:48:15.9860219Z PASS [ 0.038s] ( 817/1168) spt-net net::rest::tests::records_round_trip_and_degrade test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:15.9955133Z PASS [ 0.266s] ( 818/1168) 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-21T09:48:16.0003837Z PASS [ 0.043s] ( 819/1168) spt-net net::shelllink::tests::records_round_trip_and_degrade test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.0006911Z PASS [ 0.041s] ( 820/1168) spt-net net::sync::tests::forged_origin_field_is_inert test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.0045227Z PASS [ 0.049s] ( 821/1168) spt-net net::serveprobe::tests::records_round_trip_and_degrade test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.0047143Z PASS [ 0.041s] ( 822/1168) spt-net net::sync::tests::record_split_across_chunks_reassembles test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.0065151Z PASS [ 0.032s] ( 823/1168) 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-21T09:48:16.0066315Z PASS [ 0.035s] ( 824/1168) spt-net net::update::tests::forged_origin_field_is_inert test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.0108515Z PASS [ 0.258s] ( 825/1168) 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-21T09:48:16.0109244Z PASS [ 0.030s] ( 826/1168) spt-net net::update::tests::record_split_across_chunks_reassembles test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.0112879Z PASS [ 0.030s] ( 827/1168) 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-21T09:48:16.0163451Z PASS [ 0.030s] ( 828/1168) spt-net net::wanmsg::tests::forged_origin_field_is_inert test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.0168888Z PASS [ 0.284s] ( 829/1168) spt-net net::pairing::wire::tests::repair_member_keeps_seed test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.0178612Z PASS [ 0.023s] ( 830/1168) 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-21T09:48:16.0247538Z PASS [ 0.025s] ( 831/1168) spt-net net::xfer::tests::record_split_across_chunks_reassembles test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.0249138Z PASS [ 0.025s] ( 832/1168) 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-21T09:48:16.0289308Z PASS [ 0.029s] ( 833/1168) spt-net net::xfer::tests::forged_origin_field_is_inert test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.0318539Z PASS [ 0.031s] ( 834/1168) 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-21T09:48:16.0351725Z PASS [ 0.029s] ( 835/1168) spt-proto addr::tests::parses_every_qualifier_combination test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.0387402Z PASS [ 0.029s] ( 836/1168) spt-proto addr::tests::rejects_doubled_delimiters test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.0420592Z PASS [ 0.032s] ( 837/1168) spt-proto addr::tests::rejects_empty_or_bad_components test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.0442671Z PASS [ 0.033s] ( 838/1168) spt-proto chunk::tests::malformed_parts_return_none test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.0480012Z PASS [ 0.032s] ( 839/1168) spt-proto chunk::tests::missing_middle_part_is_dropped test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.0510304Z PASS [ 0.034s] ( 840/1168) spt-proto chunk::tests::orphan_group_without_head_is_dropped test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.0538357Z PASS [ 0.036s] ( 841/1168) 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-21T09:48:16.0567607Z PASS [ 0.032s] ( 842/1168) spt-proto chunk::tests::short_line_passes_through_unchunked test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.0598855Z PASS [ 0.035s] ( 843/1168) spt-proto chunk::tests::reassemble_stream_handles_mixed_traffic test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.0668578Z PASS [ 0.035s] ( 844/1168) spt-proto endpoint::tests::agent_vs_shell_split test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.0684080Z PASS [ 0.065s] ( 845/1168) spt-proto addr::tests::display_round_trips test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.0697380Z PASS [ 0.035s] ( 846/1168) spt-proto endpoint::tests::broker_and_node_families test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.0725391Z PASS [ 0.034s] ( 847/1168) spt-proto endpoint::tests::day_one_tags_round_trip test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.0755098Z PASS [ 0.034s] ( 848/1168) spt-proto endpoint::tests::shell_kind_round_trips test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.0794202Z PASS [ 0.035s] ( 849/1168) spt-proto endpoint::tests::unknown_tag_tolerated_and_preserved test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.0825596Z PASS [ 0.034s] ( 850/1168) spt-proto envelope::tests::body_escape_is_cr_linesafe test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.0864369Z PASS [ 0.035s] ( 851/1168) 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-21T09:48:16.0894043Z PASS [ 0.035s] ( 852/1168) 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-21T09:48:16.0929492Z PASS [ 0.036s] ( 853/1168) 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-21T09:48:16.0961451Z PASS [ 0.036s] ( 854/1168) spt-proto envelope::tests::from_attr_unescape_is_amp_last test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.0973462Z PASS [ 0.068s] ( 855/1168) spt-proto chunk::tests::split_then_reassemble_is_byte_identity test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.0983316Z PASS [ 0.373s] ( 856/1168) 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-21T09:48:16.0987716Z PASS [ 0.032s] ( 857/1168) spt-proto envelope::tests::parser_both_tags_present test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.1014913Z PASS [ 0.033s] ( 858/1168) 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-21T09:48:16.1045989Z PASS [ 0.035s] ( 859/1168) 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-21T09:48:16.1078626Z PASS [ 0.035s] ( 860/1168) 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-21T09:48:16.1114109Z PASS [ 0.036s] ( 861/1168) 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-21T09:48:16.1140080Z PASS [ 0.035s] ( 862/1168) spt-proto event::tests::alarm_event_round_trips test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.1169505Z PASS [ 0.034s] ( 863/1168) spt-proto event::tests::attr_decode_is_amp_last test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.1199046Z PASS [ 0.033s] ( 864/1168) spt-proto event::tests::attr_order_preserved test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.1231843Z PASS [ 0.034s] ( 865/1168) 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-21T09:48:16.1265387Z PASS [ 0.034s] ( 866/1168) spt-proto event::tests::empty_body_envelope_parses test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.1292665Z PASS [ 0.033s] ( 867/1168) spt-proto event::tests::malformed_inputs_return_none_without_panic test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.1322180Z PASS [ 0.035s] ( 868/1168) spt-proto event::tests::msg_event_round_trips test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.1349310Z PASS [ 0.037s] ( 869/1168) 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-21T09:48:16.1384450Z PASS [ 0.040s] ( 870/1168) spt-proto event::tests::typed_envelope_detected_and_parsed test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.1412238Z PASS [ 0.040s] ( 871/1168) spt-proto event::tests::typed_predicate_rejects_partials test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.1436168Z PASS [ 0.039s] ( 872/1168) 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-21T09:48:16.1467555Z PASS [ 0.039s] ( 873/1168) spt-proto event::tests::user_msg_event_round_trips test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.1490161Z PASS [ 0.038s] ( 874/1168) 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-21T09:48:16.1525179Z PASS [ 0.038s] ( 875/1168) spt-proto event::tests::user_msg_identity_gate_truth_table test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.1550662Z PASS [ 0.038s] ( 876/1168) spt-proto id::tests::accepts_japanese_scripts test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.1577588Z PASS [ 0.038s] ( 877/1168) spt-proto id::tests::accepts_plain_and_composite_ids test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.1607522Z PASS [ 0.037s] ( 878/1168) spt-proto id::tests::rejects_empty_and_overlong test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.1632869Z PASS [ 0.037s] ( 879/1168) spt-proto id::tests::rejects_path_whitespace_and_control test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.1660615Z PASS [ 0.037s] ( 880/1168) spt-proto id::tests::reports_bad_char_position test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.1690771Z PASS [ 0.037s] ( 881/1168) spt-proto id::tests::reserves_address_delimiters test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.1723878Z PASS [ 0.037s] ( 882/1168) spt-proto identity::tests::bad_inputs_error_without_panic test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.1787550Z PASS [ 0.037s] ( 883/1168) spt-proto identity::tests::public_key_hex_round_trips test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.1849909Z PASS [ 0.046s] ( 884/1168) spt-proto identity::tests::known_answer_fixed_seed_is_stable test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.1856624Z PASS [ 0.039s] ( 885/1168) spt-proto payload::tests::base64_known_vectors test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.1886787Z PASS [ 0.040s] ( 886/1168) 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-21T09:48:16.1909122Z PASS [ 0.038s] ( 887/1168) spt-proto payload::tests::blob_padding_lengths_round_trip test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.1978947Z PASS [ 0.043s] ( 888/1168) spt-proto payload::tests::command_payload_round_trips test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.2048956Z PASS [ 0.047s] ( 889/1168) spt-proto payload::tests::text_payload_round_trips test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.2080763Z PASS [ 0.047s] ( 890/1168) spt-proto payload::tests::unknown_or_malformed_decodes_to_none test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.2086785Z PASS [ 0.045s] ( 891/1168) spt-proto version::tests::current_version_self_compatible test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.2117067Z PASS [ 0.046s] ( 892/1168) 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-21T09:48:16.2155123Z PASS [ 0.046s] ( 893/1168) spt-proto version::tests::window_floor_saturates_at_zero test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.2169644Z PASS [ 0.073s] ( 894/1168) spt-proto identity::tests::sign_verify_round_trip test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.2220138Z PASS [ 0.043s] ( 895/1168) spt-runtime manifest::tests::digest_section_source_resolution test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.2249656Z PASS [ 0.040s] ( 896/1168) spt-runtime manifest::tests::digest_section_validation_errors test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.2271739Z PASS [ 0.041s] ( 897/1168) spt-runtime manifest::tests::fetcher_strategy_requires_fetcher_field test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.2310836Z PASS [ 0.042s] ( 898/1168) spt-runtime manifest::tests::harness_fixture_parses_all_sections test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.2337882Z PASS [ 0.043s] ( 899/1168) 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-21T09:48:16.2412976Z PASS [ 0.036s] ( 900/1168) spt-runtime manifest::tests::host_binaries_optional_and_n1_safe test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.2423287Z PASS [ 0.034s] ( 901/1168) spt-runtime manifest::tests::inject_env_without_value_fails_validation test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.2459516Z PASS [ 0.048s] ( 902/1168) spt-runtime manifest::tests::hint_keyword_matching test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.2463917Z PASS [ 0.074s] ( 903/1168) spt-runtime manifest::tests::checked_in_schema_is_current test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.2489685Z PASS [ 0.037s] ( 904/1168) spt-runtime manifest::tests::message_idle_translation_binary_opt_in test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.2511843Z PASS [ 0.036s] ( 905/1168) spt-runtime manifest::tests::minimal_header_only_manifest_is_valid test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.2518199Z PASS [ 0.043s] ( 906/1168) spt-runtime manifest::tests::manifest_schema_shape test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.2545116Z PASS [ 0.037s] ( 907/1168) 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-21T09:48:16.2577453Z PASS [ 0.036s] ( 908/1168) spt-runtime manifest::tests::profile_overlays_hints_wholesale test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.2617803Z PASS [ 0.037s] ( 909/1168) spt-runtime manifest::tests::round_trips_through_toml test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.2641033Z PASS [ 0.037s] ( 910/1168) 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-21T09:48:16.2666950Z PASS [ 0.036s] ( 911/1168) spt-runtime manifest::tests::shell_fixture_parses test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.2691033Z PASS [ 0.035s] ( 912/1168) 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-21T09:48:16.2725302Z PASS [ 0.031s] ( 913/1168) spt-runtime manifest::tests::shell_tunnel_opt_in test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.2762468Z PASS [ 0.034s] ( 914/1168) spt-runtime manifest::tests::shortcut_basename_optional_with_default test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.2781188Z PASS [ 0.032s] ( 915/1168) 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-21T09:48:16.2809213Z PASS [ 0.034s] ( 916/1168) 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-21T09:48:16.2848237Z PASS [ 0.036s] ( 917/1168) spt-runtime manifest::tests::update_avenue_content_signing_fields test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.2876047Z PASS [ 0.036s] ( 918/1168) spt-runtime manifest::tests::update_avenue_gh_release_fields test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.2901267Z PASS [ 0.038s] ( 919/1168) spt-runtime profile::tests::deep_nested_leaf_replace test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.2933778Z PASS [ 0.039s] ( 920/1168) 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-21T09:48:16.2969475Z PASS [ 0.039s] ( 921/1168) spt-runtime profile::tests::leaf_replace_contract test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.2993220Z PASS [ 0.037s] ( 922/1168) spt-runtime profile::tests::profile_overlays_strings test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.3022527Z PASS [ 0.038s] ( 923/1168) spt-runtime profile::tests::resolve_shipped_profile_applies_overlay test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.3049503Z PASS [ 0.038s] ( 924/1168) spt-runtime profile::tests::resolve_unknown_profile_errors test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.3091926Z PASS [ 0.040s] ( 925/1168) spt-runtime profile::tests::split_option_first_colon test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.3125203Z PASS [ 0.040s] ( 926/1168) spt-runtime profile::tests::string_dot_path_read_write test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.3155738Z PASS [ 0.039s] ( 927/1168) spt-runtime profile::tests::tighten_only_allows_tightening test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.3188912Z PASS [ 0.041s] ( 928/1168) spt-runtime profile::tests::tighten_only_refuses_loosened_over_cap test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:16.3213762Z PASS [ 0.040s] ( 929/1168) spt-runtime profile::tests::tighten_only_refuses_loosened_require_approval test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:17.8687770Z PASS [ 1.584s] ( 930/1168) spt-runtime registry::tests::create_local_profile_guards test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:17.8847165Z PASS [ 1.596s] ( 931/1168) 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-21T09:48:17.8850615Z PASS [ 1.584s] ( 932/1168) spt-runtime registry::tests::invalid_manifest_records_nothing test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:17.8851707Z PASS [ 1.593s] ( 933/1168) spt-runtime registry::tests::delete_local_profile_rules test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:17.9110652Z PASS [ 1.613s] ( 934/1168) spt-runtime registry::tests::file_backed_string_reads_contents_lazily test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:17.9151858Z PASS [ 1.618s] ( 935/1168) spt-runtime registry::tests::deregister_is_soft_and_readd_reactivates test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:17.9253327Z PASS [ 1.616s] ( 936/1168) 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-21T09:48:17.9277619Z PASS [ 1.615s] ( 937/1168) 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-21T09:48:17.9346627Z PASS [ 1.614s] ( 938/1168) spt-runtime registry::tests::resolve_option_bare_shipped_and_local test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:17.9362139Z PASS [ 1.628s] ( 939/1168) spt-runtime registry::tests::local_profile_survives_readd test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:17.9362839Z PASS [ 1.612s] ( 940/1168) spt-runtime registry::tests::resolve_option_in_matches_disk test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:17.9374318Z PASS [ 0.069s] ( 941/1168) 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-21T09:48:17.9382444Z PASS [ 0.028s] ( 942/1168) 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-21T09:48:17.9428896Z PASS [ 1.627s] ( 943/1168) spt-runtime registry::tests::register_copy_vs_pointer_by_avenue test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:17.9449883Z PASS [ 1.642s] ( 944/1168) 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-21T09:48:17.9487123Z PASS [ 0.065s] ( 945/1168) 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-21T09:48:17.9526992Z PASS [ 0.041s] ( 946/1168) spt-runtime resolve::tests::pointer_is_sibling_to_adapter_dirs test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:17.9711662Z PASS [ 0.043s] ( 947/1168) spt-runtime resolve::tests::renamed_in_use_exe_still_resolves test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:17.9766141Z PASS [ 0.043s] ( 948/1168) spt-runtime resolve::tests::single_candidate_resolves_base_no_pointer test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:17.9806294Z PASS [ 0.096s] ( 949/1168) spt-runtime registry::tests::strings_get_set_through_overlay test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:17.9860882Z PASS [ 0.043s] ( 950/1168) spt-runtime runtime::tests::fills_known_placeholders test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:17.9875572Z PASS [ 0.041s] ( 951/1168) spt-runtime runtime::tests::literal_braces_still_escape_per_token test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:17.9901330Z PASS [ 0.041s] ( 952/1168) 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-21T09:48:17.9903961Z PASS [ 0.037s] ( 953/1168) spt-runtime runtime::tests::missing_key_errors_before_spawn test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:17.9923873Z PASS [ 0.068s] ( 954/1168) spt-runtime resolve::tests::pointer_overrides_fallback test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:17.9969230Z PASS [ 0.063s] ( 955/1168) spt-runtime resolve::tests::stale_pointer_self_heals_to_fallback test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:17.9984262Z PASS [ 0.022s] ( 956/1168) 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-21T09:48:17.9989734Z PASS [ 0.028s] ( 957/1168) spt-runtime runtime::tests::multiword_value_is_one_argv_element test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:18.0010068Z PASS [ 0.117s] ( 958/1168) spt-runtime resolve::tests::fallback_picks_freshest_then_name test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:18.0015925Z PASS [ 0.021s] ( 959/1168) 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-21T09:48:18.0059574Z PASS [ 0.021s] ( 960/1168) 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-21T09:48:18.0062097Z PASS [ 0.021s] ( 961/1168) spt-runtime runtime::tests::resolve_program_falls_back_to_path test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:18.0180467Z PASS [ 0.028s] ( 962/1168) spt-runtime runtime::tests::resolve_program_prefers_install_dir test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:18.0225362Z PASS [ 0.030s] ( 963/1168) spt-runtime runtime::tests::tokenize_honors_double_quotes test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:18.0240751Z PASS [ 0.091s] ( 964/1168) spt-runtime resolve::tests::set_clear_prune_rules test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:18.0321579Z PASS [ 0.034s] ( 965/1168) spt-runtime runtime::tests::unknown_role_errors test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:18.0366908Z PASS [ 0.037s] ( 966/1168) spt-store access::tests::recent_outbound_correlates_within_window test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:18.0398143Z PASS [ 0.102s] ( 967/1168) spt-runtime runtime::tests::bounded_run_captures_success test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:18.0437124Z PASS [ 0.045s] ( 968/1168) spt-store access::tests::allow_revoke_open_polarity test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:18.0502972Z PASS [ 0.049s] ( 969/1168) spt-store access::tests::recent_outbound_is_bounded test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:18.0546786Z PASS [ 0.048s] ( 970/1168) spt-store access::tests::users_reservation_decodes_inert test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:18.0547412Z PASS [ 0.052s] ( 971/1168) spt-store access::tests::recent_outbound_persists test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:18.0612053Z PASS [ 0.054s] ( 972/1168) spt-store access::tests::store_persists_and_degrades_open test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:18.0612652Z PASS [ 0.070s] ( 973/1168) spt-runtime runtime::tests::spawn_session_detached_returns_pid test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:18.0613181Z PASS [ 0.037s] ( 974/1168) spt-store atomic::tests::retry_absorbs_transient_then_succeeds test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:18.0624628Z PASS [ 0.031s] ( 975/1168) spt-store atomic::tests::retry_does_not_retry_non_transient test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:18.0642706Z PASS [ 0.046s] ( 976/1168) spt-store atomic::tests::atomic_write_bytes_round_trips test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:18.0667937Z PASS [ 0.030s] ( 977/1168) spt-store atomic::tests::retry_gives_up_after_max_attempts test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:18.0681452Z PASS [ 0.028s] ( 978/1168) spt-store atomic::tests::to_forward_slash_strips_unc_prefix test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:18.0695602Z PASS [ 0.047s] ( 979/1168) spt-store atomic::tests::atomic_write_creates_and_replaces test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:18.0749750Z PASS [ 0.025s] ( 980/1168) spt-store attachment::tests::boot_reset_and_serving_filter test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:18.0780712Z PASS [ 0.034s] ( 981/1168) spt-store attachment::tests::attached_default_flip_roundtrip test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:18.0801629Z PASS [ 0.026s] ( 982/1168) spt-store attachment::tests::corrupt_file_degrades_to_attached test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:18.1224213Z PASS [ 0.048s] ( 983/1168) spt-store contextmark::tests::join_bump_dominates_both_parents test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:18.1227031Z PASS [ 0.044s] ( 984/1168) spt-store contextmark::tests::merge_decisions test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:18.1326449Z PASS [ 0.051s] ( 985/1168) spt-store contextmark::tests::marker_round_trips_v1_and_v2 test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:18.1327102Z PASS [ 0.051s] ( 986/1168) spt-store contextmark::tests::vector_parse_tolerant test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:18.1372066Z PASS [ 0.059s] ( 987/1168) spt-store contextmark::tests::vector_compare_covers_all_orders test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:18.5198179Z LEAK [ 0.582s] ( 988/1168) spt-runtime runtime::tests::bounded_run_kills_on_timeout test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:19.8543159Z PASS [ 1.732s] ( 989/1168) spt-store contextstore::tests::invalid_id_refused test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:20.5332791Z PASS [ 2.470s] ( 990/1168) spt-store branchstore::tests::open_or_init_idempotent test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:20.5735009Z PASS [ 0.035s] ( 991/1168) spt-store epoch::tests::corrupt_or_absent_file_degrades_safely test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:20.5926614Z PASS [ 0.021s] ( 992/1168) spt-store epoch::tests::counter_persists_across_reload test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:20.6047699Z PASS [ 0.015s] ( 993/1168) spt-store epoch::tests::next_is_strictly_increasing_from_one test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:20.6256152Z PASS [ 0.018s] ( 994/1168) spt-store gitrun::tests::deadline_kills_and_reports_timed_out test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:20.6966823Z PASS [ 0.073s] ( 995/1168) spt-store gitrun::tests::version_runs_within_budget test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:20.7178474Z PASS [ 0.017s] ( 996/1168) spt-store grants::tests::grant_match_is_exact_per_tuple test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:20.7380882Z PASS [ 0.021s] ( 997/1168) spt-store grants::tests::grant_revoke_roundtrip_default_deny test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:20.7641162Z PASS [ 0.030s] ( 998/1168) spt-store grants::tests::persistence_and_corrupt_degrade_to_deny test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:20.8634575Z PASS [ 0.092s] ( 999/1168) spt-store history::tests::appends_one_record_per_line test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:21.6735349Z PASS [ 0.817s] (1000/1168) spt-store history::tests::context_entries_carry_the_discriminator test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:21.8107533Z PASS [ 12.630s] (1001/1168) spt-live signoff::tests::boundary_writes_resume_commune test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:21.8231203Z PASS [ 0.147s] (1002/1168) 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-21T09:48:21.8411314Z PASS [ 0.017s] (1003/1168) spt-store home::tests::home_assignment_matrix test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:21.8549664Z PASS [ 0.045s] (1004/1168) 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-21T09:48:21.8577051Z PASS [ 3.792s] (1005/1168) spt-store branchstore::tests::sweep_removes_only_stale_empty_locks test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:21.8622877Z PASS [ 0.022s] (1006/1168) spt-store home::tests::scope_seeding_never_clobbers_user_policy test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:21.8693400Z PASS [ 0.014s] (1007/1168) 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-21T09:48:21.8780447Z PASS [ 0.016s] (1008/1168) 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-21T09:48:21.8919839Z PASS [ 0.026s] (1009/1168) 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-21T09:48:21.9113263Z PASS [ 0.027s] (1010/1168) spt-store info::tests::controllable_is_additive_and_round_trips test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:21.9195235Z PASS [ 0.029s] (1011/1168) spt-store info::tests::corrupt_content_returns_none test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:21.9898893Z PASS [ 0.069s] (1012/1168) 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-21T09:48:22.0199015Z PASS [ 0.034s] (1013/1168) spt-store info::tests::read_pid_tolerates_schema_minimal test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:22.0798226Z PASS [ 0.056s] (1014/1168) spt-store info::tests::set_driven_by_stamps_and_clears test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:22.1164957Z PASS [ 0.038s] (1015/1168) spt-store info::tests::set_last_active_stamps_recency test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:22.1588440Z PASS [ 0.041s] (1016/1168) 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-21T09:48:22.1646131Z PASS [ 0.253s] (1017/1168) 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-21T09:48:22.1981817Z PASS [ 0.031s] (1018/1168) spt-store info::tests::set_status_marks_existing_record test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:22.2084297Z PASS [ 0.055s] (1019/1168) 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-21T09:48:22.2284278Z PASS [ 0.034s] (1020/1168) spt-store info::tests::write_read_round_trip test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:22.2682783Z PASS [ 0.049s] (1021/1168) spt-store liveness::tests::busy_and_missing_keep_interim_parity test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:22.2731995Z PASS [ 0.054s] (1022/1168) spt-store liveness::tests::daemon_hosted_offline_overrides_live_pid test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:22.3115891Z PASS [ 0.053s] (1023/1168) spt-store liveness::tests::daemon_hosted_online_survives_dead_pid test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:22.3299803Z PASS [ 0.054s] (1024/1168) spt-store liveness::tests::external_perch_still_pid_probes test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:22.3723112Z PASS [ 0.056s] (1025/1168) 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-21T09:48:22.3724105Z PASS [ 0.041s] (1026/1168) spt-store nodeid::tests::corrupt_key_errors_never_regenerates test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:22.3809456Z PASS [ 4.322s] (1027/1168) spt-store branchstore::tests::branches_are_independent_roots test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:22.4032484Z PASS [ 0.035s] (1028/1168) spt-store nodeid::tests::create_then_load_is_stable test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:22.4141560Z PASS [ 0.045s] (1029/1168) spt-store nodeid::tests::seed_hex_round_trips test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:22.4968446Z PASS [ 0.108s] (1030/1168) spt-store notif::tests::listing_is_subnet_scoped test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:22.5619918Z PASS [ 0.144s] (1031/1168) spt-store notif::tests::produce_list_dismiss_round_trip test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:22.5768422Z PASS [ 0.019s] (1032/1168) 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-21T09:48:22.6297124Z PASS [ 4.567s] (1033/1168) spt-store branchstore::tests::multi_key_commit_is_one_commit test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:22.6518882Z PASS [ 0.250s] (1034/1168) spt-store notif::tests::merge_is_idempotent_and_commutative test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:22.6995916Z PASS [ 0.038s] (1035/1168) spt-store peeraddrs::tests::corrupt_file_degrades_to_empty test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:22.6996625Z PASS [ 0.205s] (1036/1168) 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-21T09:48:22.7218713Z PASS [ 0.144s] (1037/1168) spt-store notif::tests::seen_unions_and_surfaced_maxes test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:22.7310130Z PASS [ 4.669s] (1038/1168) spt-store branchstore::tests::commit_then_read_at_tip test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:22.7360937Z PASS [ 0.045s] (1039/1168) 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-21T09:48:22.7365216Z PASS [ 0.047s] (1040/1168) spt-store peeraddrs::tests::put_get_roundtrip_and_noop_reput test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:22.7462239Z PASS [ 0.113s] (1041/1168) spt-store notif::tests::stale_undismissed_copy_cannot_undismiss test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:22.7550414Z PASS [ 0.020s] (1042/1168) spt-store perch::tests::classification_matrix test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:22.7556586Z PASS [ 0.031s] (1043/1168) spt-store perch::tests::child_files_route_through_one_resolver test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:22.7586079Z PASS [ 4.621s] (1044/1168) spt-store contextstore::tests::project_branch_holds_many_agents test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:22.7745514Z PASS [ 0.032s] (1045/1168) 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-21T09:48:22.7746881Z PASS [ 0.035s] (1046/1168) spt-store perch::tests::explicit_parent_wins_over_infer test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:22.7747543Z PASS [ 0.034s] (1047/1168) 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-21T09:48:22.7832440Z PASS [ 0.026s] (1048/1168) 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-21T09:48:22.7839850Z PASS [ 0.030s] (1049/1168) spt-store perch::tests::resolve_self_is_flat test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:22.7905080Z PASS [ 0.019s] (1050/1168) spt-store proc::tests::exe_basename_dead_pid_is_none test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:22.7930221Z PASS [ 0.025s] (1051/1168) spt-store proc::tests::current_process_is_alive test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:22.8057086Z PASS [ 4.731s] (1052/1168) spt-store branchstore::tests::unchanged_write_is_no_commit test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:22.8066433Z PASS [ 0.047s] (1053/1168) 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-21T09:48:22.8115452Z PASS [ 0.033s] (1054/1168) spt-store proc::tests::exe_basename_resolves_current_process test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:22.8224938Z PASS [ 0.033s] (1055/1168) spt-store proc::tests::parent_pid_resolves_and_is_alive test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:22.8345851Z PASS [ 0.038s] (1056/1168) 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-21T09:48:22.8346907Z PASS [ 0.033s] (1057/1168) spt-store proc::tests::unassigned_pid_is_dead test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:22.8347713Z PASS [ 0.030s] (1058/1168) spt-store project::tests::url_spellings_normalize_to_one_id test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:22.8608041Z PASS [ 0.066s] (1059/1168) 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-21T09:48:23.0478857Z PASS [ 0.214s] (1060/1168) 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-21T09:48:23.0564950Z PASS [ 0.224s] (1061/1168) spt-store registry::tests::register_and_lookup test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:23.0968245Z PASS [ 0.241s] (1062/1168) spt-store registry::tests::reregister_replaces_address test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:23.1132232Z PASS [ 0.298s] (1063/1168) spt-store registry::tests::clean_removes_dead_keeps_live test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:23.1251148Z PASS [ 0.313s] (1064/1168) 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-21T09:48:23.1563504Z PASS [ 0.055s] (1065/1168) spt-store rename::tests::live_nested_child_blocks_rename test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:23.1807129Z PASS [ 0.065s] (1066/1168) spt-store rename::tests::rename_refusals_leave_owlery_untouched test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:23.1807951Z PASS [ 0.123s] (1067/1168) 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-21T09:48:23.1926992Z PASS [ 0.034s] (1068/1168) 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-21T09:48:23.1940189Z PASS [ 0.066s] (1069/1168) spt-store rename::tests::rename_ripples_self_and_nested_children test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:23.2141710Z PASS [ 0.026s] (1070/1168) spt-store roster::tests::merge_is_commutative_and_idempotent test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:23.2156235Z PASS [ 0.027s] (1071/1168) 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-21T09:48:23.2284097Z PASS [ 0.017s] (1072/1168) spt-store roster::tests::roster_for_projects_one_subnets_slice test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:23.2284876Z PASS [ 0.164s] (1073/1168) spt-store registry::tests::resolve_cleans_before_lookup test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:23.2285546Z PASS [ 0.037s] (1074/1168) 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-21T09:48:23.2384851Z PASS [ 0.034s] (1075/1168) spt-store roster::tests::tombstone_dominates_suppresses_reinsert_and_clears test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:23.2468941Z PASS [ 0.035s] (1076/1168) spt-store roster::tests::tombstones_are_scoped_and_merge test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:23.2566795Z PASS [ 0.050s] (1077/1168) spt-store roster::tests::serde_additive_and_degrades_to_empty test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:23.2571013Z PASS [ 0.034s] (1078/1168) spt-store rotation::tests::coalesce_is_per_subnet test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:23.2636094Z PASS [ 0.019s] (1079/1168) 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-21T09:48:23.2733303Z PASS [ 0.031s] (1080/1168) 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-21T09:48:23.2832996Z PASS [ 0.057s] (1081/1168) spt-store roster::tests::upsert_self_overwrites_unconditionally test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:23.3013142Z PASS [ 0.035s] (1082/1168) spt-store seed::tests::seed_round_trips_through_json test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:23.3015994Z PASS [ 0.044s] (1083/1168) spt-store rotation::tests::persists_and_degrades_to_empty test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:23.3053600Z PASS [ 0.048s] (1084/1168) spt-store seed::tests::absent_cwd_is_omitted test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:23.3141921Z PASS [ 0.049s] (1085/1168) spt-store sessions::tests::appends_and_reads_in_order test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:23.3383982Z PASS [ 0.038s] (1086/1168) 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-21T09:48:23.3408438Z PASS [ 0.515s] (1087/1168) spt-store registry::tests::concurrent_registration_never_locks test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:23.3506789Z PASS [ 0.042s] (1088/1168) 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-21T09:48:23.3569439Z PASS [ 0.033s] (1089/1168) 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-21T09:48:23.3699343Z PASS [ 0.056s] (1090/1168) spt-store sessions::tests::same_session_rebind_is_deduped test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:23.3784665Z PASS [ 0.044s] (1091/1168) spt-store sessions::tests::tolerant_of_garbage_lines test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:23.3785839Z PASS [ 0.041s] (1092/1168) 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-21T09:48:23.4025590Z PASS [ 0.070s] (1093/1168) spt-store shellinfo::tests::alias_unique_rename_and_resolution test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:23.4241009Z PASS [ 0.081s] (1094/1168) spt-store shellinfo::tests::mint_smallest_free_and_teardown_frees test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:23.4369714Z PASS [ 0.067s] (1095/1168) spt-store shellinfo::tests::shellinfo_roundtrip_and_corrupt_tolerance test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:23.6033000Z PASS [ 0.163s] (1096/1168) spt-store spool::tests::reopen_is_idempotent test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:23.6092855Z PASS [ 0.232s] (1097/1168) spt-store spool::tests::drain_marks_delivered_and_is_idempotent test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:23.6331501Z PASS [ 0.255s] (1098/1168) 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-21T09:48:23.6417055Z PASS [ 0.842s] (1099/1168) spt-store project::tests::derivation_ladder test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:23.6664864Z PASS [ 0.021s] (1100/1168) spt-store subnet::tests::add_joined_preserves_seed_and_epoch test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:23.6826099Z PASS [ 0.257s] (1101/1168) 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-21T09:48:23.6908349Z PASS [ 0.025s] (1102/1168) 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-21T09:48:23.7021488Z PASS [ 0.019s] (1103/1168) 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-21T09:48:23.7116447Z PASS [ 0.025s] (1104/1168) 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-21T09:48:23.7230240Z PASS [ 0.122s] (1105/1168) spt-store spool::tests::spool_touches_has_messages_sentinel test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:23.7464846Z PASS [ 0.044s] (1106/1168) 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-21T09:48:23.7465642Z PASS [ 0.137s] (1107/1168) 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-21T09:48:23.7506428Z PASS [ 0.034s] (1108/1168) spt-store subnet::tests::minted_seeds_are_random test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:23.7698174Z PASS [ 0.018s] (1109/1168) spt-store subnet::tests::remove_drops_membership test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:23.7705045Z PASS [ 0.025s] (1110/1168) spt-store subnet::tests::no_prior_generation_before_rotation test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:23.7873897Z PASS [ 0.033s] (1111/1168) spt-store subnet::tests::rotate_bumps_epoch_and_changes_seed test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:23.7874973Z PASS [ 0.057s] (1112/1168) 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-21T09:48:23.8170742Z PASS [ 0.183s] (1113/1168) 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-21T09:48:23.8288023Z PASS [ 0.054s] (1114/1168) spt-store subnet::tests::store_persists_multi_subnet_and_rotation test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:23.8829800Z PASS [ 0.479s] (1115/1168) spt-store spool::tests::event_part_body_persists_byte_exact test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:24.0035223Z PASS [ 0.732s] (1116/1168) spt-store sessions::tests::last_k_and_bounding test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:24.2616890Z PASS [ 0.432s] (1117/1168) spt-store syncmerge::tests::non_context_branch_refused test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:24.2992769Z PASS [ 0.042s] (1118/1168) spt-store timefmt::tests::formats_known_instants test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:24.3192327Z PASS [ 0.023s] (1119/1168) spt-store timefmt::tests::lexical_order_matches_chronological_order test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:24.3391616Z PASS [ 0.025s] (1120/1168) spt-store visibility::tests::hidden_gates_sync_even_when_listed test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:24.3715491Z PASS [ 0.031s] (1121/1168) spt-store visibility::tests::hidden_is_or_of_defaults test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:24.4041174Z PASS [ 0.034s] (1122/1168) spt-store visibility::tests::override_wins_both_directions test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:24.4367901Z PASS [ 17.481s] (1123/1168) 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-21T09:48:24.4388114Z PASS [ 0.035s] (1124/1168) spt-store visibility::tests::store_persists_and_degrades_safe test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:24.4658324Z PASS [ 0.032s] (1125/1168) spt-store visibility::tests::synced_requires_membership_listing test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:24.4899474Z PASS [ 0.051s] (1126/1168) 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-21T09:48:24.5452409Z PASS [ 0.073s] (1127/1168) 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-21T09:48:24.5454638Z PASS [ 0.049s] (1128/1168) spt-term digest::tests::config_defaults_are_the_presentation_formula test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:24.5788730Z PASS [ 0.026s] (1129/1168) 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-21T09:48:24.5789470Z PASS [ 0.029s] (1130/1168) spt-term projection::tests::agent_between_tools_breaks_the_sprint test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:24.6240457Z PASS [ 0.052s] (1131/1168) spt-term projection::tests::diagnostics_clean_stream_has_no_drops test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:24.6338675Z PASS [ 0.063s] (1132/1168) spt-term projection::tests::context_record_discriminator test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:24.6564227Z PASS [ 0.036s] (1133/1168) spt-term projection::tests::diagnostics_record_every_drop_with_reason test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:24.6613150Z PASS [ 0.031s] (1134/1168) spt-term projection::tests::empty_input_projects_empty_digest test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:24.6907634Z PASS [ 6.559s] (1135/1168) spt-store contextstore::tests::conflict_artifacts_preserve_both_versions test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:24.6909294Z PASS [ 4.828s] (1136/1168) spt-store contextstore::tests::two_tier_layout_and_commits test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:24.6953177Z PASS [ 0.036s] (1137/1168) 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-21T09:48:24.7001569Z PASS [ 0.035s] (1138/1168) 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-21T09:48:24.7170672Z PASS [ 0.024s] (1139/1168) spt-term projection::tests::timeline_boundary_divider_and_window_bridge test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:24.7196699Z PASS [ 0.041s] (1140/1168) 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-21T09:48:24.7266976Z PASS [ 0.037s] (1141/1168) spt-term projection::tests::sprint_collapse_off_keeps_tools_separate test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:24.7372674Z PASS [ 0.034s] (1142/1168) spt-term projection::tests::timeline_folds_context_into_a_turn test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:24.7668281Z PASS [ 0.040s] (1143/1168) 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-21T09:48:24.7724427Z PASS [ 0.040s] (1144/1168) spt-term projection::tests::window_input_turns_bridges_and_trims test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:24.7758249Z PASS [ 0.051s] (1145/1168) spt-term projection::tests::truncates_tool_args_to_width test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:24.7818832Z PASS [ 0.052s] (1146/1168) spt-term projection::tests::unknown_fields_are_tolerated test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:24.7860860Z PASS [ 0.029s] (1147/1168) spt-term projection::tests::windows_to_last_n_turns test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:24.7999593Z PASS [ 0.031s] (1148/1168) 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-21T09:48:24.8000302Z PASS [ 0.032s] (1149/1168) spt-term reader::tests::auto_answers_synthetic_dsr_query test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:24.8555124Z PASS [ 0.080s] (1150/1168) spt-term reader::tests::no_dsr_means_no_answer test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:24.8555771Z PASS [ 0.049s] (1151/1168) spt-term winprog::tests::earlier_path_dir_wins test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:24.8645946Z PASS [ 0.063s] (1152/1168) 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-21T09:48:24.8715490Z PASS [ 0.049s] (1153/1168) 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-21T09:48:24.8757909Z PASS [ 0.026s] (1154/1168) spt-term winprog::tests::unresolvable_passes_through test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:24.8836608Z PASS [ 0.035s] (1155/1168) spt-term winprog::tests::explicit_extension_is_classified_in_place test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:24.8954260Z PASS [ 0.046s] (1156/1168) 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-21T09:48:25.0818203Z PASS [ 7.021s] (1157/1168) spt-store branchstore::tests::branches_by_recency_orders_newest_first test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:26.9268942Z PASS [ 8.404s] (1158/1168) spt-store contextstore::tests::rename_ripples_both_tiers test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:29.3810689Z PASS [ 11.261s] (1159/1168) spt-store contextstore::tests::fork_copies_both_tiers_then_diverges test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:36.6762868Z PASS [ 29.749s] (1160/1168) 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-21T09:48:37.5330559Z PASS [ 19.395s] (1161/1168) spt-store contextstore::tests::remove_endpoint_removes_exactly_the_source test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:38.2260500Z PASS [ 14.414s] (1162/1168) spt-store syncmerge::tests::legacy_bottom_vectors_surface_not_overwrite test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:38.5842964Z PASS [ 14.820s] (1163/1168) spt-store syncmerge::tests::adopt_then_incremental_then_idempotent_repull test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:39.8000435Z PASS [ 17.930s] (1164/1168) spt-store info::tests::concurrent_read_during_writes_never_torn test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:39.8719411Z PASS [ 15.990s] (1165/1168) spt-store syncmerge::tests::project_branch_unions_disjoint_agents test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:40.7603645Z PASS [ 16.982s] (1166/1168) spt-store syncmerge::tests::dominated_incoming_drops_but_joins_dag test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:40.9395010Z PASS [ 17.161s] (1167/1168) spt-store syncmerge::tests::concurrent_writes_surface_on_both_nodes test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:41.8883623Z PASS [ 17.892s] (1168/1168) spt-store syncmerge::tests::reconciled_write_propagates_and_clears_artifacts test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:41.8884194Z ──────────── test (self-hosted, Windows, hfenduleam) Test — Phase A (light pool, full parallel) 2026-06-21T09:48:41.8884380Z Summary [ 53.060s] 1168 tests run: 1168 passed (5 leaky), 1 skipped test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:48:47.0155625Z ##[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-21T09:48:47.0158745Z 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-21T09:48:47.0222001Z 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-21T09:48:47.0222215Z env: test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:48:47.0222331Z SPT_REGISTRY_BUSY_TIMEOUT_MS: 30000 test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:48:47.0222481Z ##[endgroup] test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:48:52.6435588Z Finished `test` profile [unoptimized + debuginfo] target(s) in 1.40s test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:49:08.7152535Z ──────────── test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:49:08.7152945Z Nextest run ID 9c910109-45a1-4d8f-b516-41823707ef12 with nextest profile: default test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:49:08.7153399Z 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-21T09:49:15.6161471Z PASS [ 6.900s] ( 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-21T09:49:18.4928561Z PASS [ 2.876s] ( 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-21T09:49:32.9351150Z PASS [ 14.442s] ( 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-21T09:49:48.8730556Z PASS [ 15.938s] ( 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-21T09:49:56.1070134Z PASS [ 7.234s] ( 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-21T09:50:03.4223865Z PASS [ 7.315s] ( 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-21T09:50:12.5596500Z PASS [ 9.137s] ( 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-21T09:50:20.3902514Z PASS [ 7.831s] ( 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-21T09:50:23.4262907Z PASS [ 3.036s] ( 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-21T09:50:26.1484260Z PASS [ 2.722s] (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-21T09:50:30.1729384Z PASS [ 4.024s] (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-21T09:50:33.0926103Z PASS [ 2.920s] (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-21T09:50:42.7141106Z PASS [ 9.621s] (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-21T09:51:03.5619723Z PASS [ 20.848s] (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-21T09:51:18.4515887Z PASS [ 14.889s] (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-21T09:51:25.3805113Z PASS [ 6.929s] (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-21T09:51:25.3927856Z PASS [ 0.012s] (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-21T09:51:25.4154549Z PASS [ 0.023s] (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-21T09:51:25.4212878Z PASS [ 0.006s] (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-21T09:51:32.6195106Z PASS [ 7.198s] (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-21T09:51:46.0382570Z PASS [ 13.419s] (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-21T09:51:46.2022112Z PASS [ 0.164s] (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-21T09:51:46.3432024Z PASS [ 0.141s] (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-21T09:51:46.4101633Z PASS [ 0.067s] (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-21T09:51:46.4941284Z PASS [ 0.084s] (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-21T09:51:46.5496940Z PASS [ 0.055s] (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-21T09:51:46.5737053Z PASS [ 0.024s] (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-21T09:51:46.6558417Z PASS [ 0.082s] (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-21T09:51:46.7430186Z PASS [ 0.087s] (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-21T09:51:46.8019634Z 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-21T09:51:46.8292998Z PASS [ 0.027s] (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-21T09:51:46.9637631Z PASS [ 0.134s] (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-21T09:51:47.0192696Z PASS [ 0.055s] (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-21T09:51:47.1023271Z PASS [ 0.083s] (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-21T09:51:47.2365229Z PASS [ 0.134s] (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-21T09:51:50.9807909Z PASS [ 3.744s] (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-21T09:51:51.0215110Z PASS [ 0.041s] (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-21T09:51:51.0527254Z PASS [ 0.031s] (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-21T09:51:51.0833129Z PASS [ 0.031s] (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-21T09:51:51.1422748Z PASS [ 0.059s] (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-21T09:51:51.1766537Z PASS [ 0.034s] (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-21T09:51:51.2095404Z PASS [ 0.033s] (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-21T09:51:51.3505667Z PASS [ 0.141s] (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-21T09:51:51.3884682Z PASS [ 0.038s] (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-21T09:51:51.4373750Z PASS [ 0.049s] (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-21T09:51:51.4454507Z PASS [ 0.008s] (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-21T09:51:54.9013578Z PASS [ 3.456s] (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-21T09:52:01.3573863Z PASS [ 6.456s] (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-21T09:52:01.6062947Z PASS [ 0.249s] (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-21T09:52:01.6182642Z PASS [ 0.012s] (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-21T09:52:01.8018568Z PASS [ 0.183s] (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-21T09:52:02.0236286Z PASS [ 0.222s] (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-21T09:52:02.2947925Z PASS [ 0.271s] (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-21T09:52:02.4218534Z 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-21T09:52:02.6186494Z PASS [ 0.197s] (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-21T09:52:02.8188566Z PASS [ 0.200s] (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-21T09:52:07.0437818Z PASS [ 4.225s] (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-21T09:52:07.1809949Z PASS [ 0.137s] (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-21T09:52:07.4736112Z PASS [ 0.293s] (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-21T09:52:07.6866252Z PASS [ 0.213s] (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-21T09:52:08.2150809Z PASS [ 0.528s] (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-21T09:52:08.2506674Z PASS [ 0.036s] (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-21T09:52:08.4601450Z PASS [ 0.209s] (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-21T09:52:08.5057576Z PASS [ 0.046s] (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-21T09:52:11.7293223Z PASS [ 3.223s] (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-21T09:52:16.4303917Z PASS [ 4.701s] (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-21T09:52:28.8742124Z PASS [ 12.444s] (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-21T09:52:29.5352336Z PASS [ 0.661s] (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-21T09:52:30.4555064Z PASS [ 0.920s] (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-21T09:52:31.1826234Z PASS [ 0.727s] (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-21T09:52:31.6587336Z PASS [ 0.476s] (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-21T09:52:40.7407967Z PASS [ 9.082s] (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-21T09:52:41.2856068Z PASS [ 0.545s] (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-21T09:52:45.5562226Z FAIL [ 4.270s] (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-21T09:52:45.5563010Z stdout ─── test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:52:45.5563079Z test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:52:45.5563129Z running 1 test test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:52:45.5563373Z test w5_a2_abandoned_remote_controller_idle_session_keeps_controller_by_some ... FAILED test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:52:45.5563665Z test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:52:45.5563713Z failures: test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:52:45.5563781Z test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:52:45.5563825Z failures: test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:52:45.5564005Z 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-21T09:52:45.5564182Z test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:52:45.5564339Z test result: FAILED. 0 passed; 1 failed; 0 ignored; 0 measured; 9 filtered out; finished in 4.26s test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:52:45.5564553Z test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:52:45.5564625Z stderr ─── test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:52:45.5564756Z PUMP_IPC_READER: spawned test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:52:45.5564902Z PUMP_IPC_READER: spawned test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:52:45.5565043Z PUMP_IPC_READER: spawned test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:52:45.5565784Z === W5 A2 CHARACTERIZATION: subscribed=true driven_after_attach=Some("5413fbcfb6d45fd65664df253797f3c344c29ecc9dcf9dad31b5df1d2bf3cff0") cby_attached=Some(Some("5413fbcfb6d45fd65664df253797f3c344c29ecc9dcf9dad31b5df1d2bf3cff0")) session_still_listed=true cby_after_abandon=Some(None) driven_after_abandon=None === test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:52:45.5567138Z === W5 A2 VERDICT: controller_by==None sufficient for Gap A? true (false ⇒ wedged slot stays Some(origin) ⇒ the lost-detach fix must be broker-side eviction — a reconcile `controller_by==None` check alone does NOT catch this; it only catches A1 / Gap B) === test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:52:45.5567681Z test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:52:45.5567977Z thread 'w5_a2_abandoned_remote_controller_idle_session_keeps_controller_by_some' (165832) panicked at crates\spt-daemon\tests\inject_control_wedge.rs:1671:9: test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:52:45.5569105Z A2: an abandoned remote controller on an IDLE session must STILL read controller_by == Some(origin) (the slot does not self-clear without output-drain-evict or a clean EOF) — proving controller_by==None is NOT a sufficient Gap-A signal for the production wedged-pump case; the lost-detach clear must be broker-side eviction. Got: Some(None) test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:52:45.5569960Z 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-21T09:52:45.5570149Z test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:53:17.6260372Z PASS [ 32.070s] (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-21T09:53:20.0783500Z PASS [ 2.452s] (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-21T09:53:24.4542585Z PASS [ 4.376s] (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-21T09:53:25.7436741Z PASS [ 1.289s] (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-21T09:53:26.0775617Z PASS [ 0.334s] (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-21T09:53:26.2672840Z PASS [ 0.190s] (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-21T09:53:26.4293817Z PASS [ 0.162s] (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-21T09:53:26.4402475Z PASS [ 0.011s] (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-21T09:53:26.4494211Z 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-21T09:53:26.4800989Z PASS [ 0.031s] (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-21T09:53:26.5083119Z 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-21T09:53:26.5537326Z PASS [ 0.045s] (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-21T09:53:26.5911488Z PASS [ 0.037s] (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-21T09:53:27.6145384Z PASS [ 1.023s] (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-21T09:53:27.6454145Z PASS [ 0.031s] (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-21T09:53:27.6642485Z PASS [ 0.019s] (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-21T09:53:27.6849373Z PASS [ 0.021s] (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-21T09:53:27.6849877Z ──────────── test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:53:27.6850060Z Summary [ 258.970s] 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-21T09:53:27.6851407Z FAIL [ 4.270s] (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-21T09:53:27.6896891Z error: test run failed test (self-hosted, Windows, hfenduleam) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:53:27.7570898Z ##[error]Process completed with exit code 1. test (self-hosted, Windows, hfenduleam) Post Run actions/checkout@v5 2026-06-21T09:53:27.7856543Z Post job cleanup. test (self-hosted, Windows, hfenduleam) Post Run actions/checkout@v5 2026-06-21T09:53:28.5159663Z [command]"c:\program files\git\cmd\git.exe" version test (self-hosted, Windows, hfenduleam) Post Run actions/checkout@v5 2026-06-21T09:53:28.5374999Z git version 2.43.0.windows.1 test (self-hosted, Windows, hfenduleam) Post Run actions/checkout@v5 2026-06-21T09:53:28.5413516Z Copying 'C:\Users\decid\.gitconfig' to 'C:\actions-runner\_work\_temp\df3af85a-c192-4278-94ed-ede95a82a786\.gitconfig' test (self-hosted, Windows, hfenduleam) Post Run actions/checkout@v5 2026-06-21T09:53:28.5428640Z Temporarily overriding HOME='C:\actions-runner\_work\_temp\df3af85a-c192-4278-94ed-ede95a82a786' before making global git config changes test (self-hosted, Windows, hfenduleam) Post Run actions/checkout@v5 2026-06-21T09:53:28.5429566Z 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-21T09:53:28.5434823Z [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-21T09:53:28.5693462Z [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-21T09:53:28.5925933Z [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-21T09:53:29.0021993Z [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-21T09:53:29.0223584Z http.https://github.com/.extraheader test (self-hosted, Windows, hfenduleam) Post Run actions/checkout@v5 2026-06-21T09:53:29.0248802Z [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-21T09:53:29.0470518Z [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-21T09:53:29.4088735Z [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-21T09:53:29.4327615Z [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-21T09:53:29.8065466Z Cleaning up orphan processes test (self-hosted, Linux, kitsubito) Set up job 2026-06-21T09:43:23.5395893Z Current runner version: '2.335.1' test (self-hosted, Linux, kitsubito) Set up job 2026-06-21T09:43:23.5401000Z Runner name: 'kitsubito' test (self-hosted, Linux, kitsubito) Set up job 2026-06-21T09:43:23.5401515Z Runner group name: 'Default' test (self-hosted, Linux, kitsubito) Set up job 2026-06-21T09:43:23.5402183Z Machine name: 'KITSUBITO' test (self-hosted, Linux, kitsubito) Set up job 2026-06-21T09:43:23.5404010Z ##[group]GITHUB_TOKEN Permissions test (self-hosted, Linux, kitsubito) Set up job 2026-06-21T09:43:23.5405812Z Contents: read test (self-hosted, Linux, kitsubito) Set up job 2026-06-21T09:43:23.5406198Z Metadata: read test (self-hosted, Linux, kitsubito) Set up job 2026-06-21T09:43:23.5406572Z Packages: read test (self-hosted, Linux, kitsubito) Set up job 2026-06-21T09:43:23.5406930Z ##[endgroup] test (self-hosted, Linux, kitsubito) Set up job 2026-06-21T09:43:23.5408713Z Secret source: Actions test (self-hosted, Linux, kitsubito) Set up job 2026-06-21T09:43:23.5409313Z Prepare workflow directory test (self-hosted, Linux, kitsubito) Set up job 2026-06-21T09:43:23.5810484Z Prepare all required actions test (self-hosted, Linux, kitsubito) Set up job 2026-06-21T09:43:23.5844718Z Getting action download info test (self-hosted, Linux, kitsubito) Set up job 2026-06-21T09:43:23.9170042Z Download action repository 'actions/checkout@v5' (SHA:93cb6efe18208431cddfb8368fd83d5badbf9bfd) test (self-hosted, Linux, kitsubito) Set up job 2026-06-21T09:43:24.4079763Z 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-21T09:43:24.4890453Z ##[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-21T09:43:24.4891101Z pkill -9 -f 'yes FLOOD' || true test (self-hosted, Linux, kitsubito) Reap stray flood orphans + workspace daemons (pre-test contention guard) 2026-06-21T09:43:24.4891683Z 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-21T09:43:24.4892270Z  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-21T09:43:24.4892779Z  case "$exe" in test (self-hosted, Linux, kitsubito) Reap stray flood orphans + workspace daemons (pre-test contention guard) 2026-06-21T09:43:24.4893270Z  "$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-21T09:43:24.4893791Z  esac test (self-hosted, Linux, kitsubito) Reap stray flood orphans + workspace daemons (pre-test contention guard) 2026-06-21T09:43:24.4894130Z done test (self-hosted, Linux, kitsubito) Reap stray flood orphans + workspace daemons (pre-test contention guard) 2026-06-21T09:43:24.4894457Z exit 0 test (self-hosted, Linux, kitsubito) Reap stray flood orphans + workspace daemons (pre-test contention guard) 2026-06-21T09:43:24.4910730Z 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-21T09:43:24.4911483Z env: test (self-hosted, Linux, kitsubito) Reap stray flood orphans + workspace daemons (pre-test contention guard) 2026-06-21T09:43:24.4911840Z SPT_REGISTRY_BUSY_TIMEOUT_MS: 30000 test (self-hosted, Linux, kitsubito) Reap stray flood orphans + workspace daemons (pre-test contention guard) 2026-06-21T09:43:24.4912265Z ##[endgroup] test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:43:24.5728381Z ##[group]Run actions/checkout@v5 test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:43:24.5774739Z with: test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:43:24.5775349Z repository: SaberMage/spt-core test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:43:24.5778817Z token: *** test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:43:24.5779279Z ssh-strict: true test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:43:24.5779670Z ssh-user: git test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:43:24.5780046Z persist-credentials: true test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:43:24.5780432Z clean: true test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:43:24.5780771Z sparse-checkout-cone-mode: true test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:43:24.5781173Z fetch-depth: 1 test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:43:24.5781509Z fetch-tags: false test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:43:24.5781865Z show-progress: true test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:43:24.5782208Z lfs: false test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:43:24.5782532Z submodules: false test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:43:24.5782880Z set-safe-directory: true test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:43:24.5783252Z env: test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:43:24.5783581Z SPT_REGISTRY_BUSY_TIMEOUT_MS: 30000 test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:43:24.5783997Z ##[endgroup] test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:43:24.6578293Z Syncing repository: SaberMage/spt-core test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:43:24.6579902Z ##[group]Getting Git version info test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:43:24.6580526Z Working directory is '/home/reavus/actions-runner/_work/spt-core/spt-core' test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:43:24.6581403Z [command]/usr/bin/git version test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:43:24.6608058Z git version 2.43.0 test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:43:24.6625516Z ##[endgroup] test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:43:24.6636549Z Temporarily overriding HOME='/home/reavus/actions-runner/_work/_temp/b90224a8-a08c-4c3d-b121-ff001785cd57' before making global git config changes test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:43:24.6637698Z Adding repository directory to the temporary git global config as a safe directory test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:43:24.6639719Z [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-21T09:43:24.6672695Z [command]/usr/bin/git config --local --get remote.origin.url test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:43:24.6691453Z https://github.com/SaberMage/spt-core test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:43:24.6701331Z ##[group]Removing previously created refs, to avoid conflicts test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:43:24.6703693Z [command]/usr/bin/git rev-parse --symbolic-full-name --verify --quiet HEAD test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:43:24.6721956Z HEAD test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:43:24.6750461Z ##[endgroup] test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:43:24.6751484Z [command]/usr/bin/git submodule status test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:43:24.6937942Z ##[group]Cleaning the repository test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:43:24.6938722Z [command]/usr/bin/git clean -ffdx test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:43:25.4628534Z Removing target/ test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:43:25.4637260Z [command]/usr/bin/git reset --hard HEAD test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:43:25.4687838Z HEAD is now at 1cafc8afb Merge 6a27b0b9a2658ec5039ce38b939c6bfdad2757fa into 86f20ac831033a20bd5e096b1c318a75249179f3 test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:43:25.4693455Z ##[endgroup] test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:43:25.4695759Z ##[group]Disabling automatic garbage collection test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:43:25.4698636Z [command]/usr/bin/git config --local gc.auto 0 test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:43:25.4722066Z ##[endgroup] test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:43:25.4722686Z ##[group]Setting up auth test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:43:25.4727773Z [command]/usr/bin/git config --local --name-only --get-regexp core\.sshCommand test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:43:25.4751552Z [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-21T09:43:25.4941926Z [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-21T09:43:25.4966583Z [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-21T09:43:25.5150433Z [command]/usr/bin/git config --local --name-only --get-regexp ^includeIf\.gitdir: test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:43:25.5174734Z [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-21T09:43:25.5357142Z [command]/usr/bin/git config --local http.https://github.com/.extraheader AUTHORIZATION: basic *** test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:43:25.5386392Z ##[endgroup] test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:43:25.5386978Z ##[group]Fetching the repository test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:43:25.5392700Z [command]/usr/bin/git -c protocol.version=2 fetch --no-tags --prune --no-recurse-submodules --depth=1 origin +1cafc8afb1ed6606350cab07e057989c02fea0c7:refs/remotes/pull/27/merge test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:43:25.9890194Z ##[endgroup] test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:43:25.9891290Z ##[group]Determining the checkout info test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:43:25.9892030Z ##[endgroup] test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:43:25.9895719Z [command]/usr/bin/git sparse-checkout disable test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:43:25.9977723Z [command]/usr/bin/git config --local --unset-all extensions.worktreeConfig test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:43:26.0005133Z ##[group]Checking out the ref test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:43:26.0007562Z [command]/usr/bin/git checkout --progress --force refs/remotes/pull/27/merge test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:43:26.0050346Z HEAD is now at 1cafc8afb Merge 6a27b0b9a2658ec5039ce38b939c6bfdad2757fa into 86f20ac831033a20bd5e096b1c318a75249179f3 test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:43:26.0053456Z ##[endgroup] test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:43:26.0087803Z [command]/usr/bin/git log -1 --format=%H test (self-hosted, Linux, kitsubito) Run actions/checkout@v5 2026-06-21T09:43:26.0124774Z 1cafc8afb1ed6606350cab07e057989c02fea0c7 test (self-hosted, Linux, kitsubito) Use mold linker (Linux) 2026-06-21T09:43:26.0245043Z ##[group]Run echo 'RUSTFLAGS=-C link-arg=-fuse-ld=mold' >> "$GITHUB_ENV" test (self-hosted, Linux, kitsubito) Use mold linker (Linux) 2026-06-21T09:43:26.0245581Z echo 'RUSTFLAGS=-C link-arg=-fuse-ld=mold' >> "$GITHUB_ENV" test (self-hosted, Linux, kitsubito) Use mold linker (Linux) 2026-06-21T09:43:26.0258405Z shell: /usr/bin/bash -e {0} test (self-hosted, Linux, kitsubito) Use mold linker (Linux) 2026-06-21T09:43:26.0258672Z env: test (self-hosted, Linux, kitsubito) Use mold linker (Linux) 2026-06-21T09:43:26.0258929Z SPT_REGISTRY_BUSY_TIMEOUT_MS: 30000 test (self-hosted, Linux, kitsubito) Use mold linker (Linux) 2026-06-21T09:43:26.0259319Z ##[endgroup] test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:26.0317673Z ##[group]Run cargo nextest run -p spt-daemon --no-run test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:26.0318068Z cargo nextest run -p spt-daemon --no-run test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:26.0330048Z shell: /usr/bin/bash -e {0} test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:26.0330300Z env: test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:26.0330512Z SPT_REGISTRY_BUSY_TIMEOUT_MS: 30000 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:26.0330827Z RUSTFLAGS: -C link-arg=-fuse-ld=mold test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:26.0331077Z ##[endgroup] test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:26.5983218Z Compiling proc-macro2 v1.0.106 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:26.5983734Z Compiling quote v1.0.45 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:26.5984143Z Compiling unicode-ident v1.0.24 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:26.5984596Z Compiling libc v0.2.186 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:26.5985030Z Compiling serde_core v1.0.228 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:26.5985331Z Compiling serde v1.0.228 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:26.5985622Z Compiling cfg-if v1.0.4 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:26.6038146Z Compiling pin-project-lite v0.2.17 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:26.6049418Z Compiling typenum v1.20.1 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:26.6100815Z Compiling portable-atomic v1.13.1 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:26.6141949Z Compiling version_check v0.9.5 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:26.6192389Z Compiling memchr v2.8.1 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:26.6193314Z Compiling critical-section v1.2.0 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:26.6194132Z Compiling futures-core v0.3.32 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:26.6194627Z Compiling bytes v1.11.1 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:26.6247066Z Compiling subtle v2.6.1 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:26.6596790Z Compiling log v0.4.32 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:26.6827117Z Compiling smallvec v1.15.1 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:26.6925541Z Compiling shlex v2.0.1 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:26.7393466Z Compiling semver v1.0.28 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:26.7831007Z Compiling find-msvc-tools v0.1.9 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:26.8201297Z Compiling itoa v1.0.18 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:26.8759764Z Compiling equivalent v1.0.2 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:26.9003246Z Compiling stable_deref_trait v1.2.1 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:26.9564791Z Compiling futures-io v0.3.32 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:26.9668003Z Compiling futures-sink v0.3.32 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:26.9691075Z Compiling slab v0.4.12 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:26.9870568Z Compiling futures-task v0.3.32 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:27.0156369Z Compiling cc v1.2.63 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:27.0305300Z Compiling hashbrown v0.17.1 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:27.0691350Z Compiling generic-array v0.14.7 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:27.0951144Z Compiling rustc_version v0.4.1 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:27.1060693Z Compiling futures-channel v0.3.32 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:27.1400751Z Compiling cpufeatures v0.2.17 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:27.1591319Z Compiling fnv v1.0.7 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:27.2050688Z Compiling cfg_aliases v0.2.1 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:27.2150773Z Compiling rand_core v0.10.1 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:27.2260602Z Compiling litemap v0.8.2 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:27.2316073Z Compiling rustversion v1.0.22 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:27.2432694Z Compiling writeable v0.6.3 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:27.2630687Z Compiling icu_properties_data v2.2.0 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:27.3180666Z Compiling bitflags v2.12.1 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:27.3619492Z Compiling icu_normalizer_data v2.2.0 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:27.3961172Z Compiling getrandom v0.4.2 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:27.4763894Z Compiling utf8_iter v1.0.4 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:27.5000367Z Compiling percent-encoding v2.3.2 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:27.5002725Z Compiling http v1.4.1 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:27.6330136Z Compiling thiserror v2.0.18 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:27.6370742Z Compiling cpufeatures v0.3.0 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:27.6770779Z Compiling autocfg v1.5.1 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:27.6931398Z Compiling form_urlencoded v1.2.2 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:27.6990527Z Compiling untrusted v0.9.0 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:27.7308586Z Compiling chacha20 v0.10.0 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:27.7468291Z Compiling ident_case v1.0.1 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:27.8180733Z Compiling strsim v0.11.1 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:27.8890497Z Compiling indexmap v2.14.0 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:27.9210425Z Compiling rustls v0.23.40 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:27.9457471Z Compiling syn v2.0.117 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:27.9613160Z Compiling unicode-segmentation v1.13.3 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:28.0196274Z Compiling scopeguard v1.2.0 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:28.0197802Z Compiling anyhow v1.0.102 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:28.0751113Z Compiling atomic-waker v1.1.2 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:28.1250461Z Compiling lock_api v0.4.14 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:28.1502673Z Compiling const-oid v0.10.2 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:28.1720608Z Compiling unicode-xid v0.2.6 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:28.2000524Z Compiling zerocopy v0.8.50 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:28.2150592Z Compiling httparse v1.10.1 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:28.2223347Z Compiling hybrid-array v0.4.12 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:28.2260260Z Compiling curve25519-dalek v4.1.3 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:28.2744770Z Compiling ahash v0.8.12 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:28.4248760Z Compiling base64ct v1.8.3 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:28.4331667Z Compiling fastrand v2.4.1 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:28.4604819Z Compiling paste v1.0.15 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:28.4923208Z Compiling convert_case v0.10.0 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:28.5552652Z Compiling powerfmt v0.2.0 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:28.6840279Z Compiling http-body v1.0.1 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:28.7438158Z Compiling crypto-common v0.1.7 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:28.7570469Z Compiling block-buffer v0.10.4 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:28.7615396Z Compiling deranged v0.5.8 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:28.7971120Z Compiling pem-rfc7468 v1.0.0 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:28.8714486Z Compiling num-traits v0.2.19 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:28.8870650Z Compiling digest v0.10.7 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:28.8947797Z Compiling tinyvec_macros v0.1.1 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:28.9040853Z Compiling data-encoding v2.11.0 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:28.9384436Z Compiling pkg-config v0.3.33 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:28.9491705Z Compiling zmij v1.0.21 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:28.9824991Z Compiling vcpkg v0.2.15 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:28.9987284Z Compiling base64 v0.22.1 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:29.0151044Z Compiling ring v0.17.14 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:29.0545448Z Compiling socket2 v0.6.4 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:29.1150531Z Compiling mio v1.2.1 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:29.1431037Z Compiling getrandom v0.2.17 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:29.2520749Z Compiling try-lock v0.2.5 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:29.2740668Z Compiling num-conv v0.2.2 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:29.3389604Z Compiling rand_core v0.6.4 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:29.3505320Z Compiling time-core v0.1.8 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:29.3670671Z Compiling parking_lot_core v0.9.12 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:29.4350891Z Compiling rand v0.10.1 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:29.4590855Z Compiling tower-service v0.3.3 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:29.4810319Z Compiling want v0.3.1 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:29.5424129Z Compiling sha2 v0.10.9 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:29.6235647Z Compiling tinyvec v1.11.0 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:29.6447017Z Compiling block-buffer v0.12.0 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:29.6840558Z Compiling crypto-common v0.2.2 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:29.6970505Z Compiling inout v0.1.4 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:29.7885545Z Compiling vergen-lib v9.1.0 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:29.8253107Z Compiling n0-future v0.3.2 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:29.8353339Z Compiling signature v2.2.0 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:29.9361233Z Compiling cordyceps v0.3.4 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:29.9590755Z Compiling heck v0.5.0 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:29.9928529Z Compiling libsqlite3-sys v0.30.1 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:30.0003486Z Compiling serde_json v1.0.150 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:30.0610736Z Compiling crossbeam-utils v0.8.21 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:30.0851271Z Compiling httpdate v1.0.3 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:30.2048137Z Compiling parking v2.2.1 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:30.2246323Z Compiling winnow v1.0.3 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:30.2661153Z Compiling spin v0.10.0 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:30.2770587Z Compiling diatomic-waker v0.2.3 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:30.3069446Z Compiling netlink-packet-core v0.8.1 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:30.3248792Z Compiling futures-lite v2.6.1 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:30.3743751Z Compiling ed25519 v2.2.3 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:30.3770553Z Compiling cipher v0.4.4 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:30.4021731Z Compiling futures-buffered v0.2.13 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:30.4935003Z Compiling universal-hash v0.5.1 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:30.6124153Z Compiling vergen v9.1.0 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:30.6300541Z Compiling vergen-lib v0.1.6 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:30.6544383Z Compiling heapless v0.7.17 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:30.7460889Z Compiling digest v0.11.3 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:30.7500235Z Compiling curve25519-dalek v5.0.0-pre.6 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:30.7561618Z Compiling noq-udp v0.10.0 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:30.7835701Z Compiling sync_wrapper v1.0.2 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:30.7903534Z Compiling opaque-debug v0.3.1 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:30.8120825Z Compiling byteorder v1.5.0 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:30.8422044Z Compiling toml_datetime v1.1.1+spec-1.1.0 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:30.8870573Z Compiling either v1.16.0 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:30.9284186Z Compiling polyval v0.6.2 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:30.9920733Z Compiling hash32 v0.2.1 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:31.0120609Z Compiling parking_lot v0.12.5 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:31.1489916Z Compiling spin v0.9.8 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:31.1652221Z Compiling vergen-gitcl v1.0.8 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:31.2000634Z Compiling num_threads v0.1.7 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:31.3350491Z Compiling tower-layer v0.3.3 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:31.3871066Z Compiling fallible-streaming-iterator v0.1.9 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:31.3992843Z Compiling fallible-iterator v0.3.0 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:31.4122460Z Compiling signature v3.0.0 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:31.4923524Z Compiling ghash v0.5.1 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:31.4961006Z Compiling sha2 v0.11.0-rc.5 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:31.5060390Z Compiling aes v0.8.4 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:31.5283982Z Compiling ctr v0.9.2 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:31.5419303Z Compiling fs2 v0.4.3 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:31.5760809Z Compiling aead v0.5.2 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:31.6140537Z Compiling http-body-util v0.1.3 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:31.7040795Z Compiling openssl-probe v0.2.1 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:31.7330594Z Compiling crossbeam-channel v0.5.15 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:31.7760954Z Compiling crossbeam-epoch v0.9.18 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:31.7970264Z Compiling netlink-packet-route v0.29.0 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:31.8660649Z Compiling toml_parser v1.1.2+spec-1.1.0 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:31.9480466Z Compiling uuid v1.23.2 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:31.9568463Z Compiling blake3 v1.8.5 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:32.0170673Z Compiling memoffset v0.6.5 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:32.2034328Z Compiling aes-gcm v0.10.3 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:32.2305686Z Compiling acto v0.8.2 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:32.2490805Z Compiling noq v0.18.0 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:32.2740753Z Compiling netwatch v0.16.0 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:32.3939180Z Compiling time v0.3.47 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:32.4070225Z Compiling ref-cast v1.0.25 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:32.4182802Z Compiling sorted-index-buffer v0.2.1 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:32.4685831Z Compiling foldhash v0.2.0 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:32.4833325Z Compiling mac-addr v0.3.0 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:32.4987694Z Compiling lru-slab v0.1.2 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:32.5230653Z Compiling allocator-api2 v0.2.21 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:32.5710470Z Compiling identity-hash v0.1.0 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:32.6230718Z Compiling toml_edit v0.25.12+spec-1.1.0 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:32.6430985Z Compiling rustc-hash v2.1.2 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:32.6542806Z Compiling xml-rs v0.8.28 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:32.6787853Z Compiling tagptr v0.2.0 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:32.6972886Z Compiling ryu v1.0.23 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:32.7170496Z Compiling thiserror v1.0.69 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:32.8937312Z Compiling netlink-packet-route v0.30.0 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:32.9641293Z Compiling hashbrown v0.16.1 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:32.9970581Z Compiling termios v0.2.2 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:33.0970741Z Compiling synstructure v0.13.2 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:33.1391882Z Compiling darling_core v0.20.11 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:33.1782184Z Compiling serde_derive_internals v0.29.1 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:33.2080048Z Compiling ioctl-rs v0.1.6 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:33.3254816Z Compiling serial-core v0.4.0 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:33.3399628Z Compiling simple-dns v0.9.3 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:33.5231473Z Compiling proc-macro-crate v3.5.0 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:33.6843815Z Compiling xmltree v0.10.3 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:33.8714283Z Compiling aho-corasick v1.1.4 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:33.9380646Z Compiling regex-syntax v0.8.10 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:33.9560934Z Compiling constant_time_eq v0.4.2 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:34.0592735Z Compiling arrayvec v0.7.6 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:34.1310033Z Compiling sha1_smol v1.0.1 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:34.2120640Z Compiling smol_str v0.1.24 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:34.2190492Z Compiling winnow v0.7.15 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:34.3160602Z Compiling arrayref v0.3.9 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:34.3615412Z Compiling simdutf8 v0.1.5 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:34.3720728Z Compiling toml_write v0.1.2 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:34.4070449Z Compiling resolv-conf v0.7.6 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:34.5220502Z Compiling lru v0.16.4 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:34.6040574Z Compiling serial-unix v0.4.0 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:34.7580556Z Compiling serde_bytes v0.11.19 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:34.7865261Z Compiling hmac v0.12.1 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:34.8140853Z Compiling seize v0.5.1 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:34.9310587Z Compiling iroh v0.98.2 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:35.0000471Z Compiling cmov v0.5.4 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:35.0132819Z Compiling dyn-clone v1.0.20 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:35.0503960Z Compiling bitflags v1.3.2 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:35.1032339Z Compiling pin-utils v0.1.0 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:35.1791062Z Compiling nix v0.25.1 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:35.1882278Z Compiling papaya v0.2.4 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:35.2140726Z Compiling hkdf v0.12.4 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:35.2570952Z Compiling serde_derive v1.0.228 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:35.2840770Z Compiling zeroize_derive v1.4.3 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:35.3250721Z Compiling tokio-macros v2.7.0 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:35.3703773Z Compiling zerofrom-derive v0.1.7 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:35.3910709Z Compiling futures-macro v0.3.32 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:35.7745836Z Compiling yoke-derive v0.8.2 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:36.0620487Z Compiling zeroize v1.8.2 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:36.0870805Z Compiling tokio v1.52.3 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:36.1300689Z Compiling zerovec-derive v0.11.3 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:36.2638828Z Compiling displaydoc v0.2.6 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:36.2740555Z Compiling tracing-attributes v0.1.31 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:36.4230302Z Compiling futures-util v0.3.32 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:36.5301085Z Compiling rustls-pki-types v1.14.1 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:37.0340701Z Compiling curve25519-dalek-derive v0.1.1 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:37.0440922Z Compiling zerofrom v0.1.8 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:37.1780679Z Compiling thiserror-impl v2.0.18 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:37.2666104Z Compiling yoke v0.8.3 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:37.2800776Z Compiling rustls-webpki v0.103.13 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:37.3700460Z Compiling darling_macro v0.20.11 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:37.5070573Z Compiling zerotrie v0.2.4 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:37.7557247Z Compiling darling v0.20.11 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:37.7661554Z Compiling derive_more-impl v2.1.1 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:37.8410376Z Compiling derive_builder_core v0.20.2 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:37.8480872Z Compiling spez v0.1.2 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:37.9150708Z Compiling n0-error-macros v0.1.3 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:37.9490812Z Compiling zerovec v0.11.6 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:38.2630633Z Compiling der v0.8.0-rc.10 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:38.7192472Z Compiling tinystr v0.8.3 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:38.9560433Z Compiling icu_locale_core v2.2.0 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:39.0180643Z Compiling potential_utf v0.1.5 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:39.0630930Z Compiling n0-error v0.1.3 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:39.1409900Z Compiling icu_collections v2.2.0 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:39.1752192Z Compiling pin-project-internal v1.1.13 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:39.2423870Z Compiling derive_builder_macro v0.20.2 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:39.2720892Z Compiling cobs v0.3.0 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:39.4741434Z Compiling ed25519-dalek v2.2.0 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:39.5341775Z Compiling postcard-derive v0.2.2 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:39.5470489Z Compiling derive_builder v0.20.2 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:39.9019733Z Compiling spki v0.8.0-rc.4 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:39.9851355Z Compiling spt-proto v0.12.1 (/home/reavus/actions-runner/_work/spt-core/spt-core/crates/spt-proto) test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:40.1036518Z Compiling pkcs8 v0.11.0-rc.10 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:40.1230671Z Compiling data-encoding-macro-internal v0.1.18 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:40.1910489Z Compiling icu_provider v2.2.0 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:40.2710606Z Compiling futures-executor v0.3.32 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:40.4571154Z Compiling futures v0.3.32 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:40.4933839Z Compiling rustls-native-certs v0.8.4 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:40.5410252Z Compiling num_enum_derive v0.7.6 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:40.5525302Z Compiling icu_normalizer v2.2.0 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:40.5966075Z Compiling icu_properties v2.2.0 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:40.6810521Z Compiling ipnet v2.12.0 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:40.7630607Z Compiling pin-project v1.1.13 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:40.7850619Z Compiling ed25519 v3.0.0-rc.4 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:40.9350751Z Compiling data-encoding-macro v0.1.20 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:41.0130705Z Compiling strum_macros v0.28.0 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:41.1889609Z Compiling prefix-trie v0.8.4 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:41.2259392Z Compiling async-trait v0.1.89 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:41.4573374Z Compiling once_cell v1.21.4 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:41.4893026Z Compiling enum-assoc v1.3.0 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:41.5643621Z Compiling iroh-metrics-derive v0.4.1 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:41.6533793Z Compiling moka v0.12.15 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:41.7059889Z Compiling tracing-core v0.1.36 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:42.0280653Z Compiling hashbrown v0.14.5 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:42.1152346Z Compiling tokio-util v0.7.18 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:42.1300507Z Compiling idna_adapter v1.2.2 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:42.1702869Z Compiling netlink-sys v0.8.8 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:42.2910713Z Compiling idna v1.1.0 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:42.2953157Z Compiling tracing v0.1.44 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:42.4100760Z Compiling ed25519-dalek v3.0.0-pre.6 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:42.4738505Z Compiling tower v0.5.3 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:42.6171406Z Compiling derive_more v2.1.1 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:42.6580653Z Compiling postcard v1.1.3 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:42.7590665Z Compiling url v2.5.8 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:42.7690549Z Compiling netlink-proto v0.12.0 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:42.7850638Z Compiling netdev v0.42.0 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:42.8250574Z Compiling num_enum v0.7.6 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:42.8540625Z Compiling iroh-relay v0.98.0 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:42.9613286Z Compiling hashlink v0.9.1 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:42.9745713Z Compiling serde_spanned v0.6.9 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:42.9803359Z Compiling toml_datetime v0.6.11 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:43.0620555Z Compiling iroh-metrics v0.38.3 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:43.1130743Z Compiling ref-cast-impl v1.0.25 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:43.1330250Z Compiling thiserror-impl v1.0.69 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:43.2040564Z Compiling h2 v0.4.14 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:43.2805470Z Compiling tokio-stream v0.1.18 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:43.3245083Z Compiling toml_edit v0.22.27 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:43.3657979Z Compiling n0-watcher v0.6.1 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:43.3820652Z Compiling rusqlite v0.32.1 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:43.6670581Z Compiling hickory-proto v0.26.0-beta.4 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:43.7011262Z Compiling attohttpc v0.30.1 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:43.9480605Z Compiling iroh-base v0.98.0 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:43.9730781Z Compiling strum v0.28.0 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:44.0760511Z Compiling tower-http v0.6.11 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:44.1788659Z Compiling webpki-roots v1.0.7 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:44.1925407Z Compiling regex-automata v0.4.14 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:44.2780718Z Compiling schemars_derive v1.2.1 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:44.3173986Z Compiling backon v1.6.0 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:44.4780320Z Compiling iroh-dns v0.98.0 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:44.5871289Z Compiling spt-store v0.12.1 (/home/reavus/actions-runner/_work/spt-core/spt-core/crates/spt-store) test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:44.6750559Z Compiling ctutils v0.4.2 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:44.6871759Z Compiling serial v0.4.0 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:44.7660603Z Compiling downcast-rs v1.2.1 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:44.7900520Z Compiling shell-words v1.1.1 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:44.8719880Z Compiling spake2 v0.4.0 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:44.9449793Z Compiling filedescriptor v0.8.3 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:44.9777532Z Compiling sha1 v0.10.6 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:45.0070687Z Compiling rustix v1.1.4 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:45.0690822Z Compiling doctest-file v1.1.1 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:45.2300343Z Compiling portable-pty v0.8.1 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:45.2580501Z Compiling linux-raw-sys v0.12.1 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:45.5848477Z Compiling interprocess v2.4.2 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:46.0382182Z Compiling schemars v1.2.1 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:46.1517803Z Compiling toml v0.8.23 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:46.4020920Z Compiling swarm-discovery v0.6.0-alpha.2 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:46.7280559Z Compiling tokio-rustls v0.26.4 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:46.7672856Z Compiling noq-proto v0.17.0 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:46.8200844Z Compiling rustls-platform-verifier v0.7.0 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:47.0804675Z Compiling tokio-websockets v0.13.2 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:47.2855512Z Compiling regex v1.12.3 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:47.6151055Z Compiling spt-msg v0.12.1 (/home/reavus/actions-runner/_work/spt-core/spt-core/crates/spt-msg) test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:47.9060544Z Compiling tempfile v3.27.0 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:47.9510616Z Compiling spt-runtime v0.12.1 (/home/reavus/actions-runner/_work/spt-core/spt-core/crates/spt-runtime) test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:48.0363525Z Compiling spt-term v0.12.1 (/home/reavus/actions-runner/_work/spt-core/spt-core/crates/spt-term) test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:48.8812554Z Compiling hyper v1.10.1 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:48.8990466Z Compiling hickory-net v0.26.0-beta.4 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:50.1460151Z Compiling hyper-util v0.1.20 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:50.1569788Z Compiling hickory-resolver v0.26.0-beta.4 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:50.2964890Z Compiling spt-live v0.12.1 (/home/reavus/actions-runner/_work/spt-core/spt-core/crates/spt-live) test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:51.4566422Z Compiling hyper-rustls v0.27.9 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:51.4567253Z Compiling igd-next v0.17.1 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:51.6046585Z Compiling reqwest v0.13.4 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:43:52.1112668Z Compiling portmapper v0.16.0 test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:04.2287826Z Compiling spt-net v0.12.1 (/home/reavus/actions-runner/_work/spt-core/spt-core/crates/spt-net) test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:44:05.5772596Z Compiling spt-daemon v0.12.1 (/home/reavus/actions-runner/_work/spt-core/spt-core/crates/spt-daemon) test (self-hosted, Linux, kitsubito) WEDGE-TRACE build warmup (both platforms) 2026-06-21T09:45:29.4074257Z Finished `test` profile [unoptimized + debuginfo] target(s) in 2m 03s test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (warm, both gates, both platforms) 2026-06-21T09:45:31.6955801Z ##[group]Run cargo nextest run -p spt-daemon --no-fail-fast \ test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (warm, both gates, both platforms) 2026-06-21T09:45:31.6956658Z cargo nextest run -p spt-daemon --no-fail-fast \ test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (warm, both gates, both platforms) 2026-06-21T09:45:31.6957154Z  -E 'test(a_journaled_input_wedge) | test(p0_paste_wedge) | test(g2_no_commit)' \ test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (warm, both gates, both platforms) 2026-06-21T09:45:31.6957582Z  --no-capture 2>&1 \ test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (warm, both gates, both platforms) 2026-06-21T09:45:31.6958264Z | grep -E 'JOURNAL-WEDGE GATE|PASTE-WEDGE GATE|subscribed|got_output|attach_received|keystroke_accepted|assertion|panicked|c1:|c2:|c3:|EVICT|c3-DROP|PASS|FAIL' \ test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (warm, both gates, both platforms) 2026-06-21T09:45:31.6959071Z | grep -vE 'drain appends=' || true test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (warm, both gates, both platforms) 2026-06-21T09:45:31.8960094Z shell: /usr/bin/bash -e {0} test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (warm, both gates, both platforms) 2026-06-21T09:45:31.8960330Z env: test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (warm, both gates, both platforms) 2026-06-21T09:45:31.8960527Z SPT_REGISTRY_BUSY_TIMEOUT_MS: 30000 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (warm, both gates, both platforms) 2026-06-21T09:45:31.8960774Z RUSTFLAGS: -C link-arg=-fuse-ld=mold test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (warm, both gates, both platforms) 2026-06-21T09:45:31.8961018Z SPT_WEDGE_TRACE: 1 test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (warm, both gates, both platforms) 2026-06-21T09:45:31.8961217Z ##[endgroup] test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (warm, both gates, both platforms) 2026-06-21T09:46:28.1718552Z WEDGE_TRACE c3-DROP: stream=1 append seq=0 but NO subscriber yet test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (warm, both gates, both platforms) 2026-06-21T09:46:28.1719287Z WEDGE_TRACE c3: stream=2 live-send seq=0 count=1 write_ok=true test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (warm, both gates, both platforms) 2026-06-21T09:46:28.1815992Z === W1b JOURNAL-WEDGE GATE: journaled_ops_pumped=12321 concurrent_attach_subscribed=true attach_received_pty_output=false (fixed = both true; pre-fix on Unix: subscribed=false — attach wedged on the held journal lock) === test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (warm, both gates, both platforms) 2026-06-21T09:46:28.1817037Z thread 'a_journaled_input_wedge_does_not_starve_a_concurrent_rc_attach' (3547590) panicked at crates/spt-daemon/tests/inject_control_wedge.rs:750:5: test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (warm, both gates, both platforms) 2026-06-21T09:46:28.1817624Z test a_journaled_input_wedge_does_not_starve_a_concurrent_rc_attach ... FAILED test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (warm, both gates, both platforms) 2026-06-21T09:46:28.1818073Z test result: FAILED. 0 passed; 1 failed; 0 ignored; 0 measured; 9 filtered out; finished in 18.95s test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (warm, both gates, both platforms) 2026-06-21T09:46:28.1822660Z FAIL [ 18.966s] (1/3) spt-daemon::inject_control_wedge a_journaled_input_wedge_does_not_starve_a_concurrent_rc_attach test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (warm, both gates, both platforms) 2026-06-21T09:46:28.1823408Z thread 'g2_no_commit_deadline_faults_binary_and_does_not_wedge_controller_input' (3547630) panicked at crates/spt-daemon/tests/inject_control_wedge.rs:1196:5: test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (warm, both gates, both platforms) 2026-06-21T09:46:28.1824057Z test g2_no_commit_deadline_faults_binary_and_does_not_wedge_controller_input ... FAILED test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (warm, both gates, both platforms) 2026-06-21T09:46:28.1824533Z test result: FAILED. 0 passed; 1 failed; 0 ignored; 0 measured; 9 filtered out; finished in 16.69s test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (warm, both gates, both platforms) 2026-06-21T09:46:28.1825122Z FAIL [ 16.700s] (2/3) spt-daemon::inject_control_wedge g2_no_commit_deadline_faults_binary_and_does_not_wedge_controller_input test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (warm, both gates, both platforms) 2026-06-21T09:46:28.1825627Z WEDGE_TRACE c3-DROP: stream=1 append seq=0 but NO subscriber yet test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (warm, both gates, both platforms) 2026-06-21T09:46:28.1825956Z WEDGE_TRACE c3: stream=2 live-send seq=0 count=1 write_ok=true test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (warm, both gates, both platforms) 2026-06-21T09:46:28.1827417Z === P0 PASTE-WEDGE GATE: pumped=37707 keystroke_accepted=true concurrent_attach_subscribed=true attach_received_output=false backpressured=true backpressure_after_stop=Some(true) (fixed = subscribed+got_output+keystroke_accepted true; pre-fix: parked dispatch thread → subscribed=false / no output) === test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (warm, both gates, both platforms) 2026-06-21T09:46:28.1828676Z thread 'p0_paste_wedge_parked_write_does_not_starve_attach_or_wedge_broker' (3547672) panicked at crates/spt-daemon/tests/inject_control_wedge.rs:1996:5: test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (warm, both gates, both platforms) 2026-06-21T09:46:28.1829428Z test p0_paste_wedge_parked_write_does_not_starve_attach_or_wedge_broker ... FAILED test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (warm, both gates, both platforms) 2026-06-21T09:46:28.1830253Z test result: FAILED. 0 passed; 1 failed; 0 ignored; 0 measured; 9 filtered out; finished in 19.45s test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (warm, both gates, both platforms) 2026-06-21T09:46:28.1830815Z FAIL [ 19.465s] (3/3) spt-daemon::inject_control_wedge p0_paste_wedge_parked_write_does_not_starve_attach_or_wedge_broker test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (warm, both gates, both platforms) 2026-06-21T09:46:28.1831435Z FAIL [ 18.966s] (1/3) spt-daemon::inject_control_wedge a_journaled_input_wedge_does_not_starve_a_concurrent_rc_attach test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (warm, both gates, both platforms) 2026-06-21T09:46:28.1832059Z FAIL [ 16.700s] (2/3) spt-daemon::inject_control_wedge g2_no_commit_deadline_faults_binary_and_does_not_wedge_controller_input test (self-hosted, Linux, kitsubito) WEDGE-TRACE diagnostic (warm, both gates, both platforms) 2026-06-21T09:46:28.1832719Z FAIL [ 19.465s] (3/3) spt-daemon::inject_control_wedge p0_paste_wedge_parked_write_does_not_starve_attach_or_wedge_broker test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:28.1900225Z ##[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-21T09:46:28.1904264Z 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-21T09:46:28.1918836Z shell: /usr/bin/bash -e {0} test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:28.1919146Z env: test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:28.1919327Z SPT_REGISTRY_BUSY_TIMEOUT_MS: 30000 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:28.1919584Z RUSTFLAGS: -C link-arg=-fuse-ld=mold test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:28.1919805Z ##[endgroup] test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:28.7377960Z Compiling jobserver v0.1.34 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:28.7378408Z Compiling mio v1.2.1 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:28.7466674Z Compiling strsim v0.11.1 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:28.7514465Z Compiling dunce v1.0.5 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:28.7515046Z Compiling fs_extra v1.3.0 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:28.7564618Z Compiling rustix v1.1.4 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:28.7606844Z Compiling unicode-segmentation v1.13.3 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:28.7607506Z Compiling aws-lc-rs v1.17.0 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:28.7707568Z Compiling rustls v0.23.40 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:28.7773491Z Compiling either v1.16.0 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:28.8012528Z Compiling errno v0.3.14 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:28.8013206Z Compiling signal-hook v0.3.18 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:28.8013827Z Compiling rustix v0.38.44 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:28.8014274Z Compiling utf8parse v0.2.2 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:28.8014700Z Compiling foldhash v0.1.5 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:28.8064537Z Compiling colorchoice v1.0.5 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:28.8150956Z Compiling anstyle-query v1.1.5 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:28.9170873Z Compiling signal-hook-registry v1.4.8 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:28.9213409Z Compiling anstyle-parse v1.0.0 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:28.9430918Z Compiling is_terminal_polyfill v1.70.2 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:28.9600663Z Compiling anstyle v1.0.14 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:28.9840111Z Compiling linux-raw-sys v0.4.15 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:29.0170772Z Compiling darling_core v0.20.11 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:29.0250903Z Compiling darling_core v0.23.0 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:29.0421249Z Compiling instability v0.3.12 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:29.1078330Z Compiling hashbrown v0.15.5 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:29.1206525Z Compiling cc v1.2.63 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:29.1580452Z Compiling prefix-trie v0.8.4 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:29.2158616Z Compiling anstream v1.0.0 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:29.2310919Z Compiling itertools v0.13.0 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:29.2940606Z Compiling strum_macros v0.26.4 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:29.3201082Z Compiling castaway v0.2.4 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:29.3400507Z Compiling static_assertions v1.1.0 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:29.4020505Z Compiling tokio v1.52.3 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:29.4370491Z Compiling convert_case v0.10.0 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:29.4458450Z Compiling clap_lex v1.1.0 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:29.4523289Z Compiling indoc v2.0.7 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:29.6097647Z Compiling signal-hook-mio v0.2.5 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:29.6994487Z Compiling unicode-width v0.1.14 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:29.7235560Z Compiling compact_str v0.8.2 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:29.7370657Z Compiling clap_derive v4.6.1 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:29.8500845Z Compiling unicode-width v0.2.0 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:29.8755754Z Compiling derive_more-impl v2.1.1 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:29.9101648Z Compiling lru v0.12.5 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:29.9266674Z Compiling cassowary v0.3.0 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:29.9832536Z Compiling hickory-proto v0.26.0-beta.4 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:29.9900100Z Compiling iana-time-zone v0.1.65 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:30.1188815Z Compiling nucleo-matcher v0.3.1 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:30.1317436Z Compiling qrcode v0.14.1 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:30.4290426Z Compiling chrono v0.4.45 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:30.8233980Z Compiling cmake v0.1.58 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:30.8609396Z Compiling crossterm v0.28.1 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:30.8920854Z 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-21T09:46:31.2890544Z Compiling unicode-truncate v1.1.0 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:31.3230735Z 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-21T09:46:31.5960665Z Compiling libsqlite3-sys v0.30.1 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:31.6779120Z Compiling aws-lc-sys v0.41.0 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:31.8000694Z Compiling ring v0.17.14 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:31.9932658Z Compiling blake3 v1.8.5 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:32.1731038Z Compiling strum v0.26.3 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:32.3300259Z Compiling tempfile v3.27.0 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:32.3742256Z Compiling terminal_size v0.4.4 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:32.5038777Z Compiling darling_macro v0.20.11 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:32.5150517Z Compiling clap_builder v4.6.0 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:32.8415492Z Compiling darling v0.20.11 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:32.8557835Z Compiling darling_macro v0.23.0 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:32.9200922Z Compiling derive_builder_core v0.20.2 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:33.1732458Z Compiling darling v0.23.0 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:33.4603167Z Compiling derive_more v2.1.1 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:33.5650687Z Compiling iroh-base v0.98.0 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:33.7405722Z Compiling ratatui v0.29.0 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:33.7981479Z Compiling derive_builder_macro v0.20.2 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:33.9595282Z Compiling derive_builder v0.20.2 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:34.0231138Z Compiling vergen-lib v9.1.0 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:34.0400610Z Compiling vergen-lib v0.1.6 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:34.1675618Z Compiling vergen v9.1.0 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:34.2103133Z Compiling vergen-gitcl v1.0.8 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:34.6035334Z Compiling iroh-relay v0.98.0 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:34.7371854Z Compiling clap v4.6.1 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:34.9890248Z Compiling tokio-util v0.7.18 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:35.0000704Z Compiling netlink-sys v0.8.8 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:35.0001536Z Compiling tower v0.5.3 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:35.0059717Z Compiling acto v0.8.2 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:35.0062974Z Compiling backon v1.6.0 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:35.2740413Z Compiling netlink-proto v0.12.0 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:35.2798458Z Compiling netdev v0.42.0 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:35.6020948Z Compiling tower-http v0.6.11 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:35.6908432Z Compiling swarm-discovery v0.6.0-alpha.2 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:35.9540593Z Compiling h2 v0.4.14 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:35.9838842Z Compiling n0-future v0.3.2 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:36.0068343Z Compiling tokio-stream v0.1.18 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:36.1594041Z Compiling n0-watcher v0.6.1 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:36.1720190Z Compiling iroh-dns v0.98.0 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:36.3745916Z Compiling netwatch v0.16.0 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:40.4412282Z Compiling hyper v1.10.1 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:40.5571181Z Compiling rusqlite v0.32.1 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:41.1025372Z 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-21T09:46:41.3140197Z Compiling hyper-util v0.1.20 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:42.2285021Z Compiling igd-next v0.17.1 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:42.5004176Z 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-21T09:46:42.6558415Z 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-21T09:46:42.6560657Z 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-21T09:46:42.9276666Z Compiling portmapper v0.16.0 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:43.9178437Z Compiling rustls-webpki v0.103.13 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:45.4573308Z 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-21T09:46:48.3743313Z Compiling tokio-rustls v0.26.4 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:48.3743776Z Compiling rustls-platform-verifier v0.7.0 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:48.3744106Z Compiling noq-proto v0.17.0 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:48.5593178Z Compiling hickory-net v0.26.0-beta.4 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:48.5593859Z Compiling hyper-rustls v0.27.9 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:48.5594301Z Compiling tokio-websockets v0.13.2 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:48.7402515Z Compiling reqwest v0.13.4 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:49.9050501Z Compiling hickory-resolver v0.26.0-beta.4 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:52.0810911Z Compiling noq v0.18.0 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:46:55.8495837Z Compiling iroh v0.98.2 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:47:03.8017790Z 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-21T09:47:05.2565548Z 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-21T09:47:13.8746928Z 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-21T09:47:13.8879489Z 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-21T09:49:26.0063996Z Finished `test` profile [unoptimized + debuginfo] target(s) in 2m 57s test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:26.5716204Z ──────────── test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:26.5716739Z Nextest run ID ac04542c-fade-40dd-a741-a978e289dca9 with nextest profile: default test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:26.5717268Z Starting 1157 tests across 48 binaries (1 test and 39 binaries skipped) test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:26.5718140Z PASS [ 0.010s] ( 1/1157) spt::notify_shell_e2e notify_shell_renders_a_commanded_toast test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:26.6082396Z PASS [ 0.047s] ( 2/1157) mock-adapter::manifest_valid mock_has_no_claude_code_conventions test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:26.6083266Z PASS [ 0.047s] ( 3/1157) mock-adapter::manifest_valid mock_manifest_parses_and_validates test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:26.6083943Z PASS [ 0.047s] ( 4/1157) mock-adapter::manifest_valid mock_declares_commune_signoff_as_filedrops test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:26.6124788Z PASS [ 0.004s] ( 5/1157) spt::release_verify_e2e published_release_verifies_against_embedded_anchor test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:26.7478078Z PASS [ 0.176s] ( 6/1157) 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-21T09:49:26.7698179Z PASS [ 0.209s] ( 7/1157) 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-21T09:49:26.7792952Z PASS [ 0.009s] ( 8/1157) spt::bin/spt api::auth::tests::mints_distinct_nonempty_tokens test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:26.7880536Z PASS [ 0.009s] ( 9/1157) 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-21T09:49:26.7971240Z PASS [ 0.009s] ( 10/1157) spt::bin/spt api::auth::tests::no_proof_is_refused test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:26.8070960Z PASS [ 0.010s] ( 11/1157) spt::bin/spt api::auth::tests::session_id_proof_authenticates test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:26.8173395Z PASS [ 0.010s] ( 12/1157) spt::bin/spt api::auth::tests::token_proof_authenticates test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:26.8267592Z PASS [ 0.009s] ( 13/1157) 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-21T09:49:26.8370175Z PASS [ 0.010s] ( 14/1157) spt::bin/spt api::delivery::tests::echo_gate_explicit_toggle test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:26.8499672Z PASS [ 0.013s] ( 15/1157) 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-21T09:49:26.8589861Z PASS [ 0.009s] ( 16/1157) 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-21T09:49:26.8618069Z PASS [ 0.301s] ( 17/1157) spt::drive_e2e drive_channel_slot_through_the_real_socket test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:26.8686013Z PASS [ 0.010s] ( 18/1157) 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-21T09:49:26.8697738Z PASS [ 0.008s] ( 19/1157) 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-21T09:49:26.8911399Z PASS [ 0.330s] ( 20/1157) spt::contract_e2e mock_adapter_drives_the_full_contract test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:26.9576979Z PASS [ 0.066s] ( 21/1157) 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-21T09:49:26.9947396Z PASS [ 0.386s] ( 22/1157) 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-21T09:49:27.0029594Z PASS [ 0.008s] ( 23/1157) spt::bin/spt api::reporting::tests::boundary_missing_perch_refused test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.0156259Z PASS [ 0.454s] ( 24/1157) 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-21T09:49:27.0366094Z PASS [ 0.167s] ( 25/1157) 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-21T09:49:27.0368150Z PASS [ 0.168s] ( 26/1157) 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-21T09:49:27.0457530Z PASS [ 0.009s] ( 27/1157) spt::bin/spt api::reporting::tests::capability_lists_hostable_types test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.0461211Z PASS [ 0.009s] ( 28/1157) 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-21T09:49:27.0550866Z PASS [ 0.009s] ( 29/1157) 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-21T09:49:27.0551626Z PASS [ 0.009s] ( 30/1157) 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-21T09:49:27.0627756Z PASS [ 0.060s] ( 31/1157) spt::bin/spt api::reporting::tests::boundary_rebinds_keeping_anchor test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.0646324Z PASS [ 0.009s] ( 32/1157) 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-21T09:49:27.0665032Z PASS [ 0.011s] ( 33/1157) 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-21T09:49:27.0732847Z PASS [ 0.010s] ( 34/1157) spt::bin/spt api::reporting::tests::history_log_appends test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.0733953Z PASS [ 0.009s] ( 35/1157) spt::bin/spt api::reporting::tests::presence_records_endpoint test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.0770285Z PASS [ 0.011s] ( 36/1157) 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-21T09:49:27.0974577Z PASS [ 0.020s] ( 37/1157) 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-21T09:49:27.1382893Z PASS [ 0.065s] ( 38/1157) 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-21T09:49:27.1384251Z PASS [ 0.065s] ( 39/1157) 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-21T09:49:27.1433137Z PASS [ 0.185s] ( 40/1157) 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-21T09:49:27.1497606Z PASS [ 0.011s] ( 41/1157) spt::bin/spt api::startup::tests::empty_session_seed_refused test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.1587561Z PASS [ 0.598s] ( 42/1157) spt::contract_e2e seed_then_listen_binds_and_relays test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.1632510Z PASS [ 0.602s] ( 43/1157) 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-21T09:49:27.1660370Z PASS [ 0.016s] ( 44/1157) 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-21T09:49:27.1741452Z PASS [ 0.015s] ( 45/1157) spt::bin/spt api::startup::tests::missing_seed_refused test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.1822210Z PASS [ 0.085s] ( 46/1157) 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-21T09:49:27.1840477Z PASS [ 0.623s] ( 47/1157) spt::quickstart_e2e published_messaging_quickstart_runs_as_written test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.1841805Z PASS [ 0.623s] ( 48/1157) 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-21T09:49:27.1857727Z PASS [ 0.625s] ( 49/1157) 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-21T09:49:27.1876792Z PASS [ 0.579s] ( 50/1157) spt::shell_e2e mock_shell_binary_drives_the_full_link test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.1959346Z PASS [ 0.012s] ( 51/1157) 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-21T09:49:27.1975138Z PASS [ 0.015s] ( 52/1157) 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-21T09:49:27.1978792Z PASS [ 0.012s] ( 53/1157) 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-21T09:49:27.3336082Z PASS [ 0.015s] ( 54/1157) spt::bin/spt api::tests::adapter_is_optional test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.3337198Z PASS [ 0.019s] ( 55/1157) 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-21T09:49:27.3435583Z PASS [ 0.010s] ( 56/1157) spt::bin/spt api::tests::state_value_is_validated test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.3436427Z PASS [ 0.012s] ( 57/1157) spt::bin/spt api::tests::surface_parses test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.3437226Z PASS [ 0.133s] ( 58/1157) 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-21T09:49:27.3438154Z PASS [ 0.135s] ( 59/1157) 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-21T09:49:27.3439173Z PASS [ 0.107s] ( 60/1157) 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-21T09:49:27.3440014Z PASS [ 0.129s] ( 61/1157) 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-21T09:49:27.3440925Z PASS [ 0.135s] ( 62/1157) 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-21T09:49:27.3441821Z PASS [ 0.009s] ( 63/1157) 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-21T09:49:27.3500014Z PASS [ 0.011s] ( 64/1157) 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-21T09:49:27.3500640Z PASS [ 0.012s] ( 65/1157) spt::bin/spt cli::tests::access_subcommands_parse test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.3563943Z PASS [ 0.012s] ( 66/1157) spt::bin/spt cli::tests::adapter_profile_verbs_local_only test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.3680496Z PASS [ 0.012s] ( 67/1157) spt::bin/spt cli::tests::adapter_string_verbs test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.3801873Z PASS [ 0.012s] ( 68/1157) spt::bin/spt cli::tests::adapter_subcommands_parse test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.3895693Z PASS [ 0.009s] ( 69/1157) 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-21T09:49:27.3967114Z PASS [ 0.007s] ( 70/1157) 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-21T09:49:27.3968072Z PASS [ 0.055s] ( 71/1157) 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-21T09:49:27.3968770Z PASS [ 0.056s] ( 72/1157) 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-21T09:49:27.4609761Z PASS [ 0.008s] ( 73/1157) spt::bin/spt cli::tests::bare_tty_guard test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.4610339Z PASS [ 0.009s] ( 74/1157) 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-21T09:49:27.4610888Z PASS [ 0.010s] ( 75/1157) spt::bin/spt cli::tests::bare_spt_parses_to_none test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.4611436Z PASS [ 0.008s] ( 76/1157) 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-21T09:49:27.4612008Z PASS [ 0.007s] ( 77/1157) 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-21T09:49:27.4612674Z PASS [ 0.007s] ( 78/1157) 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-21T09:49:27.4731803Z PASS [ 0.671s] ( 79/1157) 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-21T09:49:27.4732714Z PASS [ 0.009s] ( 80/1157) 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-21T09:49:27.4733501Z PASS [ 0.009s] ( 81/1157) 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-21T09:49:27.4734279Z PASS [ 0.018s] ( 82/1157) 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-21T09:49:27.4735076Z PASS [ 0.017s] ( 83/1157) 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-21T09:49:27.4735824Z PASS [ 0.011s] ( 84/1157) spt::bin/spt cli::tests::daemon_subcommands_parse test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.4736473Z PASS [ 0.009s] ( 85/1157) spt::bin/spt cli::tests::digest_flag_defaults test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.4737170Z PASS [ 0.007s] ( 86/1157) 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-21T09:49:27.4737948Z PASS [ 0.007s] ( 87/1157) 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-21T09:49:27.4738644Z PASS [ 0.010s] ( 88/1157) spt::bin/spt cli::tests::endpoint_role_parses test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.4739377Z PASS [ 0.015s] ( 89/1157) spt::bin/spt cli::tests::endpoint_subcommands_parse test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.4740075Z PASS [ 0.007s] ( 90/1157) spt::bin/spt cli::tests::escalation_choice_parses_fail_closed test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.4816029Z PASS [ 0.007s] ( 91/1157) spt::bin/spt cli::tests::gh_release_version_compare_decision test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.4816919Z PASS [ 0.010s] ( 92/1157) spt::bin/spt cli::tests::grant_subcommands_parse test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.4818348Z PASS [ 0.011s] ( 93/1157) spt::bin/spt cli::tests::help_groups_cover_every_command test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.4969775Z PASS [ 0.015s] ( 94/1157) 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-21T09:49:27.5066501Z PASS [ 0.010s] ( 95/1157) 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-21T09:49:27.5112732Z PASS [ 0.373s] ( 96/1157) 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-21T09:49:27.5154381Z PASS [ 0.009s] ( 97/1157) spt::bin/spt cli::tests::invalid_usage_errors test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.5181165Z PASS [ 0.007s] ( 98/1157) 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-21T09:49:27.5200939Z PASS [ 0.377s] ( 99/1157) 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-21T09:49:27.5227635Z PASS [ 0.007s] ( 100/1157) 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-21T09:49:27.5280873Z PASS [ 0.008s] ( 101/1157) 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-21T09:49:27.5298379Z PASS [ 0.007s] ( 102/1157) 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-21T09:49:27.5354305Z PASS [ 0.007s] ( 103/1157) 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-21T09:49:27.5365455Z PASS [ 0.007s] ( 104/1157) 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-21T09:49:27.5409054Z PASS [ 0.378s] ( 105/1157) 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-21T09:49:27.5415440Z PASS [ 0.023s] ( 106/1157) 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-21T09:49:27.5421671Z PASS [ 0.007s] ( 107/1157) spt::bin/spt cli::tests::notify_subnet_resolution_home_default test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.5456620Z PASS [ 0.380s] ( 108/1157) spt::bin/spt api::startup::tests::rebind_same_session_ok test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.5484068Z PASS [ 0.012s] ( 109/1157) spt::bin/spt cli::tests::notify_surface_parses test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.5490500Z PASS [ 0.008s] ( 110/1157) 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-21T09:49:27.5519203Z PASS [ 0.010s] ( 111/1157) spt::bin/spt cli::tests::pair_namespace_is_gone test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.5544796Z PASS [ 0.009s] ( 112/1157) 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-21T09:49:27.5547126Z PASS [ 0.380s] ( 113/1157) 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-21T09:49:27.5625381Z PASS [ 0.008s] ( 114/1157) spt::bin/spt cli::tests::prune_candidates_resolve_never_guess test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.5627872Z PASS [ 0.008s] ( 115/1157) 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-21T09:49:27.5752590Z PASS [ 0.138s] ( 116/1157) spt::bin/spt cli::tests::endpoint_stop_marks_offline test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.5831075Z PASS [ 0.008s] ( 117/1157) spt::bin/spt cli::tests::ring_timeout_defaults test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.5927861Z PASS [ 0.577s] ( 118/1157) spt::bin/spt api::reporting::tests::boundary_resurfaces_undismissed_notifs test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.5997849Z PASS [ 0.007s] ( 119/1157) 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-21T09:49:27.6001984Z PASS [ 0.269s] ( 120/1157) 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-21T09:49:27.6064763Z PASS [ 0.007s] ( 121/1157) 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-21T09:49:27.6083040Z PASS [ 0.008s] ( 122/1157) 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-21T09:49:27.6132780Z PASS [ 0.050s] ( 123/1157) 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-21T09:49:27.6150060Z PASS [ 0.009s] ( 124/1157) spt::bin/spt cli::tests::send_user_msg_flag_parses test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.6188834Z PASS [ 1.058s] ( 125/1157) spt::contract_e2e live_agent_lifecycle_e2e test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.6249146Z PASS [ 0.012s] ( 126/1157) spt::bin/spt cli::tests::shell_owner_exclusivity_negatives test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.6263741Z PASS [ 0.011s] ( 127/1157) 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-21T09:49:27.6403232Z PASS [ 0.057s] ( 128/1157) 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-21T09:49:27.6410492Z PASS [ 0.207s] ( 129/1157) 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-21T09:49:27.6427515Z PASS [ 0.018s] ( 130/1157) 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-21T09:49:27.6530630Z PASS [ 0.013s] ( 131/1157) 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-21T09:49:27.6563957Z PASS [ 0.015s] ( 132/1157) spt::bin/spt cli::tests::shell_subcommands_parse test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.6601660Z PASS [ 0.017s] ( 133/1157) spt::bin/spt cli::tests::show_code_prints_reprovisioning_material test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.6611019Z PASS [ 0.008s] ( 134/1157) spt::bin/spt cli::tests::shutdown_soft_stops_and_suspends test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.6719721Z PASS [ 0.341s] ( 135/1157) spt::bin/spt api::worker::tests::worker_poll_drains_spool test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.6720850Z PASS [ 0.011s] ( 136/1157) spt::bin/spt cli::tests::subcommands_parse test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.6754740Z PASS [ 0.019s] ( 137/1157) 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-21T09:49:27.6804779Z PASS [ 0.008s] ( 138/1157) 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-21T09:49:27.6825231Z PASS [ 0.007s] ( 139/1157) 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-21T09:49:27.6876853Z PASS [ 0.007s] ( 140/1157) 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-21T09:49:27.6901113Z PASS [ 0.008s] ( 141/1157) spt::bin/spt cli::tests::unknown_elevation_falls_back test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.6911049Z PASS [ 0.019s] ( 142/1157) spt::bin/spt cli::tests::subnet_arg_shapes_parse test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.6946187Z PASS [ 0.007s] ( 143/1157) 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-21T09:49:27.6973950Z PASS [ 0.006s] ( 144/1157) 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-21T09:49:27.6982178Z PASS [ 0.008s] ( 145/1157) 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-21T09:49:27.7014540Z PASS [ 0.007s] ( 146/1157) 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-21T09:49:27.7047181Z PASS [ 0.006s] ( 147/1157) 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-21T09:49:27.7048220Z PASS [ 0.007s] ( 148/1157) 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-21T09:49:27.7092518Z PASS [ 0.008s] ( 149/1157) 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-21T09:49:27.7115382Z PASS [ 0.160s] ( 150/1157) 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-21T09:49:27.7117454Z PASS [ 0.007s] ( 151/1157) 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-21T09:49:27.7118430Z PASS [ 0.007s] ( 152/1157) 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-21T09:49:27.7177475Z PASS [ 0.008s] ( 153/1157) 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-21T09:49:27.7189806Z PASS [ 0.007s] ( 154/1157) 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-21T09:49:27.7191213Z PASS [ 0.007s] ( 155/1157) 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-21T09:49:27.7193286Z PASS [ 0.007s] ( 156/1157) 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-21T09:49:27.7251749Z PASS [ 0.007s] ( 157/1157) 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-21T09:49:27.7260430Z PASS [ 0.007s] ( 158/1157) 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-21T09:49:27.7261332Z PASS [ 0.007s] ( 159/1157) spt::bin/spt helpfmt::tests::color_enabled_truth_table test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.7262105Z PASS [ 0.007s] ( 160/1157) 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-21T09:49:27.7329153Z PASS [ 0.007s] ( 161/1157) 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-21T09:49:27.7330086Z PASS [ 0.007s] ( 162/1157) 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-21T09:49:27.7330902Z PASS [ 0.008s] ( 163/1157) 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-21T09:49:27.7331654Z PASS [ 0.007s] ( 164/1157) spt::bin/spt helpfmt::tests::link_becomes_its_text test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.7401261Z PASS [ 0.007s] ( 165/1157) 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-21T09:49:27.7402196Z PASS [ 0.007s] ( 166/1157) 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-21T09:49:27.7403345Z PASS [ 0.007s] ( 167/1157) spt::bin/spt helpfmt::tests::plain_text_is_unchanged test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.7404097Z PASS [ 0.007s] ( 168/1157) spt::bin/spt helpfmt::tests::multibyte_text_survives test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.7474243Z PASS [ 0.007s] ( 169/1157) 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-21T09:49:27.7475059Z PASS [ 0.007s] ( 170/1157) 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-21T09:49:27.7475865Z PASS [ 0.007s] ( 171/1157) spt::bin/spt picker::model::tests::adapter_tree_nests_profiles test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.7476393Z PASS [ 0.007s] ( 172/1157) 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-21T09:49:27.7549294Z PASS [ 0.007s] ( 173/1157) spt::bin/spt picker::model::tests::back_unwinds test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.7550125Z PASS [ 0.007s] ( 174/1157) spt::bin/spt picker::model::tests::category_ring_wraps test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.7550944Z PASS [ 0.007s] ( 175/1157) spt::bin/spt picker::model::tests::confirm_options_status_dependent test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.7553853Z PASS [ 0.008s] ( 176/1157) spt::bin/spt picker::model::tests::confirm_terminal_routes test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.7598074Z PASS [ 0.211s] ( 177/1157) 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-21T09:49:27.7607117Z PASS [ 0.100s] ( 178/1157) spt::bin/spt cli::tests::spt_hosted_no_relay_detection test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.7631943Z PASS [ 0.008s] ( 179/1157) spt::bin/spt picker::model::tests::cursor_clamps test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.7632645Z PASS [ 0.008s] ( 180/1157) spt::bin/spt picker::model::tests::filter_narrows test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.7633371Z PASS [ 0.008s] ( 181/1157) spt::bin/spt picker::model::tests::create_outcome_bakes_run test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.7633899Z PASS [ 0.008s] ( 182/1157) 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-21T09:49:27.7690180Z PASS [ 0.009s] ( 183/1157) spt::bin/spt picker::model::tests::kind_routes test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.7693842Z PASS [ 0.009s] ( 184/1157) spt::bin/spt picker::model::tests::prefill_jumps_to_create test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.7710138Z PASS [ 0.008s] ( 185/1157) 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-21T09:49:27.7711134Z PASS [ 0.008s] ( 186/1157) 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-21T09:49:27.7713090Z PASS [ 0.008s] ( 187/1157) spt::bin/spt picker::model::tests::resume_outcome_bakes_session test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.7714001Z PASS [ 0.008s] ( 188/1157) spt::bin/spt picker::model::tests::resume_title_render test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.7777672Z PASS [ 0.008s] ( 189/1157) 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-21T09:49:27.7779947Z PASS [ 0.009s] ( 190/1157) spt::bin/spt picker::model::tests::visible_partitions_and_sorts test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.7781660Z PASS [ 0.007s] ( 191/1157) spt::bin/spt picker::shortcut::tests::bakes_resume_and_action test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.7788088Z PASS [ 0.008s] ( 192/1157) spt::bin/spt picker::shortcut::tests::basename_is_parameterized test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.7788655Z PASS [ 0.007s] ( 193/1157) spt::bin/spt picker::shortcut::tests::write_create_update_refuse test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.7791672Z PASS [ 0.008s] ( 194/1157) spt::bin/spt picker::shortcut::tests::sentinel_detection test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.7883948Z PASS [ 0.010s] ( 195/1157) spt::bin/spt picker::view::tests::kind_buffer test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.7889975Z PASS [ 0.011s] ( 196/1157) spt::bin/spt picker::view::tests::adapter_tree_buffer test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.7897627Z PASS [ 0.012s] ( 197/1157) spt::bin/spt picker::view::tests::confirm_buffer_options test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.7903998Z PASS [ 0.012s] ( 198/1157) 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-21T09:49:27.7908502Z PASS [ 1.230s] ( 199/1157) spt::n1_compat brain_accepts_old_and_new_broker_argv test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.7927385Z PASS [ 0.013s] ( 200/1157) spt::bin/spt picker::view::tests::pick_empty_category_hint test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.7985965Z PASS [ 0.009s] ( 201/1157) 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-21T09:49:27.7987095Z PASS [ 0.009s] ( 202/1157) 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-21T09:49:27.7993942Z PASS [ 0.020s] ( 203/1157) 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-21T09:49:27.8002382Z PASS [ 0.010s] ( 204/1157) spt::bin/spt rc::tests::detach_keybind_semantics test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.8003929Z PASS [ 0.009s] ( 205/1157) spt::bin/spt rc::tests::detach_prefix_spans_chunks test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.8024600Z PASS [ 0.014s] ( 206/1157) spt::bin/spt picker::view::tests::resume_buffer_lists_sessions test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.8030390Z PASS [ 0.010s] ( 207/1157) spt::bin/spt rc::tests::first_event_stall_decision test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.8098890Z PASS [ 0.011s] ( 208/1157) 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-21T09:49:27.8100263Z PASS [ 0.011s] ( 209/1157) 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-21T09:49:27.8101096Z PASS [ 0.011s] ( 210/1157) spt::bin/spt rc::tests::op_minter_distinct_and_monotonic test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.8107289Z PASS [ 0.010s] ( 211/1157) spt::bin/spt wansend::tests::load_snapshots_degrades_on_junk test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.8112924Z PASS [ 0.011s] ( 212/1157) spt::bin/spt wansend::tests::refusals_render_copy_paste_targets test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.8184100Z PASS [ 0.008s] ( 213/1157) spt-daemon adapter_update::tests::delegated_attested_delegates_command test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.8185138Z PASS [ 0.007s] ( 214/1157) spt-daemon adapter_update::tests::delegated_unattested_is_skipped test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.8190610Z PASS [ 0.009s] ( 215/1157) spt-daemon access::tests::reply_passes_where_unsolicited_refused test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.8192018Z PASS [ 0.010s] ( 216/1157) spt-daemon access::tests::gate_decision_table test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.8195575Z PASS [ 0.010s] ( 217/1157) spt-daemon access::tests::same_node_always_passes_without_minting test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.8277620Z PASS [ 0.008s] ( 218/1157) 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-21T09:49:27.8278732Z PASS [ 0.008s] ( 219/1157) 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-21T09:49:27.8283800Z PASS [ 0.209s] ( 220/1157) spt::bin/spt cli::tests::shell_spawn_approval_floor_gates test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.8384071Z PASS [ 0.019s] ( 221/1157) spt-daemon adapter_update::tests::file_pull_wrong_key_rejected test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.8388448Z PASS [ 0.020s] ( 222/1157) spt-daemon adapter_update::tests::file_pull_tampered_bytes_rejected test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.8414162Z PASS [ 0.020s] ( 223/1157) 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-21T09:49:27.8426492Z PASS [ 0.015s] ( 224/1157) 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-21T09:49:27.8501057Z PASS [ 0.021s] ( 225/1157) 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-21T09:49:27.8553514Z PASS [ 1.294s] ( 226/1157) 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-21T09:49:27.8675393Z PASS [ 0.039s] ( 227/1157) 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-21T09:49:27.8676845Z PASS [ 0.025s] ( 228/1157) 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-21T09:49:27.8681676Z PASS [ 0.030s] ( 229/1157) spt-daemon applyhost::tests::apply_staged_refuses_a_quarantined_version test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.8720101Z PASS [ 0.032s] ( 230/1157) 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-21T09:49:27.8763058Z PASS [ 0.008s] ( 231/1157) 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-21T09:49:27.8764284Z PASS [ 0.009s] ( 232/1157) spt-daemon brainproc::tests::appended_padding_flips_exe_hash test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.8780815Z PASS [ 0.029s] ( 233/1157) 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-21T09:49:27.8789743Z PASS [ 0.039s] ( 234/1157) 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-21T09:49:27.8815382Z PASS [ 0.009s] ( 235/1157) 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-21T09:49:27.8825674Z PASS [ 0.027s] ( 236/1157) 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-21T09:49:27.8833673Z PASS [ 0.016s] ( 237/1157) 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-21T09:49:27.8863731Z PASS [ 0.010s] ( 238/1157) spt-daemon brainproc::tests::bytes_gate_truth_table test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.8893180Z PASS [ 0.011s] ( 239/1157) 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-21T09:49:27.8897006Z PASS [ 0.011s] ( 240/1157) spt-daemon brainproc::tests::planned_restart_respawns_with_update_reason test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.8914451Z PASS [ 0.010s] ( 241/1157) 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-21T09:49:27.8918388Z PASS [ 0.009s] ( 242/1157) 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-21T09:49:27.8926906Z PASS [ 0.009s] ( 243/1157) 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-21T09:49:27.8956821Z PASS [ 0.009s] ( 244/1157) 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-21T09:49:27.8975711Z PASS [ 0.008s] ( 245/1157) 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-21T09:49:27.9006443Z PASS [ 0.009s] ( 246/1157) 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-21T09:49:27.9010403Z PASS [ 0.010s] ( 247/1157) 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-21T09:49:27.9032884Z PASS [ 0.008s] ( 248/1157) 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-21T09:49:27.9486904Z PASS [ 0.340s] ( 249/1157) 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-21T09:49:27.9874100Z PASS [ 0.535s] ( 250/1157) 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-21T09:49:27.9894177Z PASS [ 1.377s] ( 251/1157) 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-21T09:49:27.9913541Z PASS [ 0.429s] ( 252/1157) spt::bin/spt cli::tests::purge_removes_every_record test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.9951093Z PASS [ 0.008s] ( 253/1157) spt-daemon broker::tests::a_full_controller_does_not_starve_a_viewer_or_block_the_drain test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.9957026Z PASS [ 0.006s] ( 254/1157) spt-daemon broker::tests::advance_delivered_is_monotonic test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:27.9983092Z PASS [ 0.007s] ( 255/1157) 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-21T09:49:28.0014060Z PASS [ 0.006s] ( 256/1157) 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-21T09:49:28.0014677Z PASS [ 0.006s] ( 257/1157) spt-daemon broker::tests::contiguous_advance_freezes_on_a_gap test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.0045991Z PASS [ 0.201s] ( 258/1157) 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-21T09:49:28.0050112Z PASS [ 0.007s] ( 259/1157) 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-21T09:49:28.0086595Z PASS [ 0.007s] ( 260/1157) 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-21T09:49:28.0092253Z PASS [ 0.008s] ( 261/1157) 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-21T09:49:28.0119628Z PASS [ 0.007s] ( 262/1157) 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-21T09:49:28.0140202Z PASS [ 0.009s] ( 263/1157) 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-21T09:49:28.0158671Z PASS [ 0.007s] ( 264/1157) spt-daemon codec::tests::back_to_back_frames_decode_independently test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.0159373Z PASS [ 0.007s] ( 265/1157) spt-daemon codec::tests::frame_round_trips_through_buffer test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.0194701Z PASS [ 0.007s] ( 266/1157) spt-daemon codec::tests::oversized_prefix_rejected test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.0223810Z PASS [ 0.008s] ( 267/1157) 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-21T09:49:28.0231791Z PASS [ 0.007s] ( 268/1157) spt-daemon config::tests::crash_grace_is_config_driven test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.0232650Z PASS [ 0.007s] ( 269/1157) spt-daemon config::tests::detached_subnets_knob_defaults_empty test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.0277387Z PASS [ 0.008s] ( 270/1157) 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-21T09:49:28.0293906Z PASS [ 0.007s] ( 271/1157) spt-daemon config::tests::malformed_file_degrades_to_default test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.0294618Z PASS [ 0.006s] ( 272/1157) spt-daemon config::tests::missing_file_is_default test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.0307638Z PASS [ 0.007s] ( 273/1157) spt-daemon config::tests::pulse_period_is_config_driven test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.0353356Z PASS [ 0.008s] ( 274/1157) spt-daemon config::tests::relay_choice_is_config_driven test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.0356456Z PASS [ 0.006s] ( 275/1157) spt-daemon consent::tests::decide_honors_full_auto_flag test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.0361587Z PASS [ 0.007s] ( 276/1157) spt-daemon config::tests::save_load_roundtrip test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.0376961Z PASS [ 0.007s] ( 277/1157) spt-daemon consent::tests::no_live_session_resolves_to_none test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.0419895Z PASS [ 0.006s] ( 278/1157) spt-daemon daemon::tests::net_retry_backoff_doubles_then_caps test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.0438510Z PASS [ 0.006s] ( 279/1157) 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-21T09:49:28.0441785Z PASS [ 0.009s] ( 280/1157) spt-daemon consent::tests::resolves_most_recently_active_live_session test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.0489622Z PASS [ 0.013s] ( 281/1157) spt-daemon daemon::tests::is_running_tracks_the_seed_channel test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.0493266Z PASS [ 0.007s] ( 282/1157) 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-21T09:49:28.0516362Z PASS [ 0.008s] ( 283/1157) spt-daemon deadline::tests::corrupt_file_degrades_to_fresh test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.0517287Z PASS [ 0.007s] ( 284/1157) spt-daemon deadline::tests::distinct_keys_do_not_cross_clobber test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.0563164Z PASS [ 0.007s] ( 285/1157) 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-21T09:49:28.0564011Z PASS [ 0.007s] ( 286/1157) 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-21T09:49:28.0591962Z PASS [ 0.007s] ( 287/1157) 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-21T09:49:28.0592895Z PASS [ 0.007s] ( 288/1157) 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-21T09:49:28.0646711Z PASS [ 0.008s] ( 289/1157) 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-21T09:49:28.0648201Z PASS [ 0.516s] ( 290/1157) 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-21T09:49:28.0653102Z PASS [ 0.009s] ( 291/1157) spt-daemon deadline::tests::update_keeps_anchor_and_refreshes_interval test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.0654302Z PASS [ 0.006s] ( 292/1157) spt-daemon deadline::tests::zero_interval_degrades_to_config_default test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.0661086Z PASS [ 0.007s] ( 293/1157) 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-21T09:49:28.0717958Z PASS [ 0.006s] ( 294/1157) 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-21T09:49:28.0719070Z PASS [ 0.006s] ( 295/1157) spt-daemon deelevate::tests::sudo_invoker_derivation_is_strict test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.0720466Z PASS [ 0.006s] ( 296/1157) 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-21T09:49:28.0721238Z PASS [ 0.007s] ( 297/1157) 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-21T09:49:28.0771232Z PASS [ 0.012s] ( 298/1157) spt-daemon deelevate::tests::election_resolves_real_users_never_root test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.0788626Z PASS [ 0.007s] ( 299/1157) spt-daemon digest::tests::merge_by_ts_interleaves_context test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.0798748Z PASS [ 0.008s] ( 300/1157) 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-21T09:49:28.0807308Z PASS [ 0.009s] ( 301/1157) 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-21T09:49:28.0855460Z PASS [ 0.007s] ( 302/1157) spt-daemon digest::tests::resolve_config_precedence test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.0856151Z PASS [ 0.009s] ( 303/1157) spt-daemon digest::tests::projects_empty_for_a_sourceless_endpoint test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.0869389Z PASS [ 0.007s] ( 304/1157) spt-daemon digesthub::tests::dropped_subscriber_is_pruned test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.0870431Z PASS [ 0.006s] ( 305/1157) spt-daemon digesthub::tests::project_and_publish_stores_latest test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.0874456Z PASS [ 0.211s] ( 306/1157) 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-21T09:49:28.0937278Z PASS [ 0.008s] ( 307/1157) spt-daemon digesthub::tests::render_is_glanceable test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.0950206Z PASS [ 0.007s] ( 308/1157) spt-daemon dispatch::tests::unknown_shapes_refuse_classification test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.0951118Z PASS [ 0.009s] ( 309/1157) 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-21T09:49:28.0951997Z PASS [ 0.008s] ( 310/1157) 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-21T09:49:28.0952841Z PASS [ 0.008s] ( 311/1157) spt-daemon digesthub::tests::subscribe_returns_current_base test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.1013361Z PASS [ 0.007s] ( 312/1157) spt-daemon drivehub::tests::dead_generation_frame_is_never_served test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.1014310Z PASS [ 0.008s] ( 313/1157) spt-daemon drivehub::tests::clear_evicts_the_slot test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.1015038Z PASS [ 0.006s] ( 314/1157) spt-daemon drivehub::tests::write_is_latest_wins test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.1015721Z PASS [ 0.007s] ( 315/1157) spt-daemon drivehub::tests::slots_are_per_owner test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.1016370Z PASS [ 0.007s] ( 316/1157) spt-daemon drivehub::tests::take_is_exactly_once test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.1083958Z PASS [ 0.219s] ( 317/1157) spt-daemon brainproc::tests::ready_with_matching_bytes_promotes test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.1090404Z PASS [ 0.008s] ( 318/1157) spt-daemon effect::tests::open_creates_missing_parent_dirs test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.1091052Z PASS [ 0.208s] ( 319/1157) 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-21T09:49:28.1091656Z PASS [ 0.008s] ( 320/1157) 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-21T09:49:28.1156219Z PASS [ 0.006s] ( 321/1157) 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-21T09:49:28.1157215Z PASS [ 0.006s] ( 322/1157) 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-21T09:49:28.1157974Z PASS [ 0.007s] ( 323/1157) 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-21T09:49:28.1213675Z PASS [ 0.217s] ( 324/1157) 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-21T09:49:28.1215991Z PASS [ 0.020s] ( 325/1157) spt-daemon effect::tests::applied_set_survives_reopen test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.1225146Z PASS [ 0.007s] ( 326/1157) spt-daemon frame::tests::handshake_rejects_role_mismatch test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.1226494Z PASS [ 0.007s] ( 327/1157) spt-daemon frame::tests::handshake_rejects_below_floor test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.1227339Z PASS [ 0.007s] ( 328/1157) 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-21T09:49:28.1230140Z PASS [ 0.051s] ( 329/1157) 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-21T09:49:28.1297684Z PASS [ 0.021s] ( 330/1157) 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-21T09:49:28.1298885Z PASS [ 0.028s] ( 331/1157) spt-daemon effect::tests::failed_effect_is_not_recorded_applied test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.1300669Z PASS [ 0.009s] ( 332/1157) spt-daemon grants::tests::escalation_answers_apply test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.1301369Z PASS [ 0.008s] ( 333/1157) spt-daemon grants::tests::escalation_ask_body_roundtrip test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.1304456Z PASS [ 0.008s] ( 334/1157) spt-daemon grants::tests::preconsent_flags_author_grants test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.1305274Z PASS [ 0.008s] ( 335/1157) spt-daemon grants::tests::no_session_escalates_with_none_target test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.1307285Z PASS [ 0.008s] ( 336/1157) spt-daemon grants::tests::reserved_capabilities_refuse_even_when_granted test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.1387716Z PASS [ 0.009s] ( 337/1157) spt-daemon harnesshost::tests::mint_session_id_is_fresh_hex test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.1392484Z PASS [ 0.009s] ( 338/1157) spt-daemon grants::tests::ungranted_escalates_granted_allows test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.1393441Z PASS [ 0.009s] ( 339/1157) 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-21T09:49:28.1394436Z PASS [ 0.009s] ( 340/1157) 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-21T09:49:28.1395562Z PASS [ 0.009s] ( 341/1157) 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-21T09:49:28.1396701Z PASS [ 0.009s] ( 342/1157) 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-21T09:49:28.1404898Z PASS [ 0.010s] ( 343/1157) 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-21T09:49:28.1481535Z PASS [ 0.009s] ( 344/1157) 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-21T09:49:28.1522293Z PASS [ 0.350s] ( 345/1157) 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-21T09:49:28.1614975Z PASS [ 0.022s] ( 346/1157) 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-21T09:49:28.1701626Z PASS [ 0.031s] ( 347/1157) 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-21T09:49:28.1702640Z PASS [ 0.030s] ( 348/1157) 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-21T09:49:28.2002182Z PASS [ 0.061s] ( 349/1157) 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-21T09:49:28.2003015Z PASS [ 0.030s] ( 350/1157) 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-21T09:49:28.2003969Z PASS [ 0.061s] ( 351/1157) spt-daemon lifecycle::tests::orphan_watch_fires_on_dead_owner test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.2004440Z PASS [ 0.062s] ( 352/1157) spt-daemon lifecycle::tests::crash_signoff_spares_recovered_self test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.2070440Z PASS [ 0.059s] ( 353/1157) 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-21T09:49:28.2073634Z PASS [ 0.007s] ( 354/1157) 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-21T09:49:28.2087352Z PASS [ 0.107s] ( 355/1157) 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-21T09:49:28.2111874Z PASS [ 0.059s] ( 356/1157) 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-21T09:49:28.2334924Z PASS [ 0.072s] ( 357/1157) 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-21T09:49:28.2426827Z PASS [ 0.031s] ( 358/1157) 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-21T09:49:28.2492507Z PASS [ 0.007s] ( 359/1157) 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-21T09:49:28.2578461Z PASS [ 0.009s] ( 360/1157) 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-21T09:49:28.2753448Z PASS [ 0.075s] ( 361/1157) 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-21T09:49:28.2768662Z PASS [ 0.070s] ( 362/1157) 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-21T09:49:28.2769611Z PASS [ 0.069s] ( 363/1157) 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-21T09:49:28.2826167Z PASS [ 0.082s] ( 364/1157) 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-21T09:49:28.2864786Z PASS [ 0.078s] ( 365/1157) spt-daemon linkhost::tests::run_action_relinks_drives_and_refuses test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.2865550Z PASS [ 0.053s] ( 366/1157) 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-21T09:49:28.2881916Z PASS [ 0.030s] ( 367/1157) 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-21T09:49:28.2917587Z PASS [ 0.009s] ( 368/1157) spt-daemon livehost::tests::reconcile_skips_an_offline_live_endpoint test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.2932093Z PASS [ 0.007s] ( 369/1157) spt-daemon livehost::tests::residency_classification test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.2986186Z PASS [ 0.007s] ( 370/1157) spt-daemon machineid::tests::hash_is_domain_separated_and_stable test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.2998841Z PASS [ 0.007s] ( 371/1157) 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-21T09:49:28.3046194Z PASS [ 0.182s] ( 372/1157) 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-21T09:49:28.3052161Z PASS [ 0.007s] ( 373/1157) spt-daemon msg::tests::bytes_round_trip_through_payload test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.3064538Z PASS [ 0.007s] ( 374/1157) spt-daemon msg::tests::endpoint_input_frames_round_trip test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.3117800Z PASS [ 0.006s] ( 375/1157) 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-21T09:49:28.3118696Z PASS [ 0.007s] ( 376/1157) 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-21T09:49:28.3120867Z PASS [ 0.419s] ( 377/1157) 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-21T09:49:28.3122367Z PASS [ 0.006s] ( 378/1157) 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-21T09:49:28.3180013Z PASS [ 0.042s] ( 379/1157) spt-daemon livehost::tests::reconcile_does_not_double_host test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.3181008Z PASS [ 0.041s] ( 380/1157) 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-21T09:49:28.3188385Z PASS [ 0.007s] ( 381/1157) spt-daemon msg::tests::output_envelope_round_trips test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.3189796Z PASS [ 0.007s] ( 382/1157) 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-21T09:49:28.3203719Z PASS [ 0.007s] ( 383/1157) spt-daemon msg::tests::spawn_req_tolerates_unknown_field test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.3256116Z PASS [ 0.006s] ( 384/1157) 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-21T09:49:28.3257158Z PASS [ 0.156s] ( 385/1157) spt-daemon lifecycle::tests::pulse_tick_ingests_drop test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.3287923Z PASS [ 0.042s] ( 386/1157) spt-daemon livehost::tests::reconcile_unhosts_on_offline_transition test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.3338143Z PASS [ 0.057s] ( 387/1157) 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-21T09:49:28.3360655Z PASS [ 0.438s] ( 388/1157) 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-21T09:49:28.3384651Z PASS [ 0.438s] ( 389/1157) spt-daemon brainproc::tests::supervisor_respawns_brain_until_stopped test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.3495563Z PASS [ 0.031s] ( 390/1157) spt-daemon nethost::tests::host_binds_endpoint_to_node_identity test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.3519986Z PASS [ 0.034s] ( 391/1157) 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-21T09:49:28.3782279Z PASS [ 0.059s] ( 392/1157) spt-daemon nethost::tests::two_hosts_dial_over_loopback test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.3787784Z PASS [ 0.029s] ( 393/1157) 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-21T09:49:28.4088947Z PASS [ 0.070s] ( 394/1157) 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-21T09:49:28.4384364Z PASS [ 0.059s] ( 395/1157) 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-21T09:49:28.4407651Z PASS [ 0.241s] ( 396/1157) 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-21T09:49:28.4639950Z PASS [ 0.130s] ( 397/1157) spt-daemon notif::tests::hidden_endpoint_boundary_surfaces_nothing test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.4906357Z PASS [ 0.178s] ( 398/1157) 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-21T09:49:28.5075096Z LEAK [ 0.219s] ( 399/1157) 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-21T09:49:28.5138334Z PASS [ 0.006s] ( 400/1157) 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-21T09:49:28.5208204Z PASS [ 0.007s] ( 401/1157) 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-21T09:49:28.5281492Z PASS [ 0.007s] ( 402/1157) 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-21T09:49:28.5350362Z PASS [ 0.007s] ( 403/1157) spt-daemon presence::tests::snapshot_loading_degrades_on_junk test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.5426077Z PASS [ 0.007s] ( 404/1157) spt-daemon presence::tests::subnet_scope_gates_both_legs test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.5501977Z PASS [ 0.008s] ( 405/1157) spt-daemon propagate::tests::classifier_maps_every_status_shape test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.5696881Z PASS [ 0.244s] ( 406/1157) 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-21T09:49:28.5697678Z PASS [ 0.244s] ( 407/1157) 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-21T09:49:28.5833696Z PASS [ 0.248s] ( 408/1157) spt-daemon notif::tests::hidden_endpoint_is_never_the_target test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.5926422Z PASS [ 0.644s] ( 409/1157) 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-21T09:49:28.6014352Z PASS [ 0.137s] ( 410/1157) spt-daemon notifsync::tests::non_member_subnet_record_never_materializes test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.6084420Z PASS [ 0.280s] ( 411/1157) 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-21T09:49:28.6221430Z PASS [ 0.181s] ( 412/1157) 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-21T09:49:28.6222145Z PASS [ 0.184s] ( 413/1157) 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-21T09:49:28.6294160Z PASS [ 0.007s] ( 414/1157) 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-21T09:49:28.6356334Z PASS [ 0.006s] ( 415/1157) 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-21T09:49:28.6443756Z PASS [ 0.154s] ( 416/1157) 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-21T09:49:28.6444700Z PASS [ 0.009s] ( 417/1157) 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-21T09:49:28.6506726Z PASS [ 0.006s] ( 418/1157) spt-daemon pump::tests::choreography_first_tick_primes_all_legs test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.6510455Z PASS [ 0.007s] ( 419/1157) 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-21T09:49:28.6570229Z PASS [ 0.006s] ( 420/1157) 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-21T09:49:28.6570964Z PASS [ 0.006s] ( 421/1157) 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-21T09:49:28.6632763Z PASS [ 0.006s] ( 422/1157) spt-daemon pump::tests::choreography_wake_forces_only_that_worker test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.6633562Z PASS [ 0.006s] ( 423/1157) 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-21T09:49:28.6695465Z PASS [ 0.006s] ( 424/1157) 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-21T09:49:28.6759697Z PASS [ 0.006s] ( 425/1157) spt-daemon pump::tests::peer_outcome_timeout_bubbles_ordinary_aborts test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.6820441Z PASS [ 0.006s] ( 426/1157) 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-21T09:49:28.6850671Z PASS [ 0.022s] ( 427/1157) spt-daemon pump::tests::heartbeat_writes_and_advances test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.6887081Z PASS [ 0.007s] ( 428/1157) spt-daemon pump::tests::seeded_dial_order_fallback_and_writeback test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.6910706Z PASS [ 0.006s] ( 429/1157) spt-daemon pump::tests::supervisor_backoff_doubles_caps_and_resets test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.6967472Z PASS [ 0.006s] ( 430/1157) 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-21T09:49:28.7236425Z PASS [ 0.173s] ( 431/1157) spt-daemon psyrelay::tests::empty_and_oversize_bodies_drop_typed test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.7253095Z PASS [ 0.037s] ( 432/1157) 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-21T09:49:28.7284677Z PASS [ 0.376s] ( 433/1157) spt-daemon notif::tests::resurface_delivers_undismissed_with_gates test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.7301818Z PASS [ 0.007s] ( 434/1157) spt-daemon reap::tests::reap_without_enroll_is_noop test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.7314921Z PASS [ 0.006s] ( 435/1157) spt-daemon reconcile::tests::active_node_wins test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.7347593Z PASS [ 0.006s] ( 436/1157) spt-daemon reconcile::tests::double_active_tiebreaks_deterministically test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.7361812Z PASS [ 0.006s] ( 437/1157) spt-daemon reconcile::tests::fallback_lowest_non_offline test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.7373688Z PASS [ 0.006s] ( 438/1157) spt-daemon reconcile::tests::no_rows_reconciles_locally test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.7403290Z PASS [ 0.331s] ( 439/1157) spt-daemon notif::tests::suppression_window_holds_cross_endpoint test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.7438751Z PASS [ 0.174s] ( 440/1157) spt-daemon psyrelay::tests::notify_without_live_endpoint_is_pending test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.7440058Z PASS [ 0.366s] ( 441/1157) spt-daemon notif::tests::rollback_notif_is_loud_and_resurfaces test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.7440854Z PASS [ 0.047s] ( 442/1157) spt-daemon reap::tests::group_reaps_enrolled_child_and_grandchild test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.7465377Z PASS [ 0.010s] ( 443/1157) spt-daemon registryhost::tests::advertise_local_scans_and_respects_visibility test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.7468701Z PASS [ 0.009s] ( 444/1157) spt-daemon registryhost::tests::advertise_local_stamps_the_node_label test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.7508272Z PASS [ 0.010s] ( 445/1157) spt-daemon registryhost::tests::advertisement_carries_both_authored_blurb test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.7535941Z PASS [ 0.009s] ( 446/1157) 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-21T09:49:28.7546963Z PASS [ 0.008s] ( 447/1157) spt-daemon registryhost::tests::apply_node_labels_gates_and_merges test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.7547760Z PASS [ 0.011s] ( 448/1157) spt-daemon registryhost::tests::advertisement_follows_resting_transitions_epoch_bumped test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.7548747Z PASS [ 0.008s] ( 449/1157) 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-21T09:49:28.7549796Z PASS [ 0.011s] ( 450/1157) spt-daemon registryhost::tests::advertisement_carries_the_presence_datum test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.7580046Z PASS [ 0.023s] ( 451/1157) spt-daemon registryhost::tests::admitted_feeds_stamp_the_heard_map test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.7619795Z PASS [ 0.011s] ( 452/1157) 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-21T09:49:28.7623689Z PASS [ 0.007s] ( 453/1157) 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-21T09:49:28.7625516Z PASS [ 0.008s] ( 454/1157) 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-21T09:49:28.7629845Z PASS [ 0.009s] ( 455/1157) 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-21T09:49:28.7633977Z PASS [ 0.009s] ( 456/1157) 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-21T09:49:28.7644686Z PASS [ 0.010s] ( 457/1157) 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-21T09:49:28.7709840Z PASS [ 0.187s] ( 458/1157) spt-daemon psyrelay::tests::null_stdout_driver_fails_the_guard test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.7711059Z PASS [ 0.009s] ( 459/1157) 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-21T09:49:28.7716521Z PASS [ 0.008s] ( 460/1157) spt-daemon relcache::tests::stage_round_trips_and_restage_replaces test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.7717747Z PASS [ 0.009s] ( 461/1157) 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-21T09:49:28.7720275Z PASS [ 0.008s] ( 462/1157) spt-daemon relcache::tests::torn_or_corrupt_stage_offers_nothing test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.7726648Z PASS [ 0.010s] ( 463/1157) 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-21T09:49:28.7733268Z PASS [ 0.181s] ( 464/1157) spt-daemon psyrelay::tests::prose_only_relays_nothing test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.7791682Z PASS [ 0.006s] ( 465/1157) spt-daemon release::tests::hex_roundtrips test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.7807425Z PASS [ 0.010s] ( 466/1157) 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-21T09:49:28.7863357Z PASS [ 0.007s] ( 467/1157) spt-daemon release::tests::production_policy_loads_fail_closed test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.7884897Z PASS [ 0.017s] ( 468/1157) spt-daemon release::tests::channel_mismatch_is_rejected test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.7885803Z PASS [ 0.016s] ( 469/1157) spt-daemon release::tests::expired_metadata_is_rejected test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.7888918Z PASS [ 0.008s] ( 470/1157) spt-daemon release::tests::revoked_key_is_rejected test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.7891111Z PASS [ 0.181s] ( 471/1157) spt-daemon psyrelay::tests::reply_without_target_is_dropped test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.7893539Z PASS [ 0.018s] ( 472/1157) spt-daemon release::tests::artifact_digest_mismatch_is_rejected test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.7917341Z PASS [ 0.020s] ( 473/1157) 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-21T09:49:28.7954096Z PASS [ 0.009s] ( 474/1157) spt-daemon release::tests::shipped_builtin_table_is_well_formed test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.8064206Z PASS [ 0.017s] ( 475/1157) 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-21T09:49:28.8073726Z PASS [ 0.018s] ( 476/1157) spt-daemon release::tests::update_set_artifact_mismatch_is_rejected test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.8074665Z PASS [ 0.019s] ( 477/1157) spt-daemon release::tests::tampered_metadata_fails_signature test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.8075505Z PASS [ 0.019s] ( 478/1157) spt-daemon release::tests::untrusted_key_is_unknown test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.8091486Z PASS [ 0.017s] ( 479/1157) 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-21T09:49:28.8113413Z PASS [ 0.038s] ( 480/1157) spt-daemon release::tests::non_monotonic_version_is_rollback test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.8152402Z PASS [ 0.020s] ( 481/1157) 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-21T09:49:28.8158613Z PASS [ 0.008s] ( 482/1157) 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-21T09:49:28.8165041Z PASS [ 0.009s] ( 483/1157) 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-21T09:49:28.8171605Z PASS [ 0.028s] ( 484/1157) 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-21T09:49:28.8174704Z PASS [ 0.008s] ( 485/1157) 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-21T09:49:28.8203868Z PASS [ 0.009s] ( 486/1157) 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-21T09:49:28.8239467Z PASS [ 0.007s] ( 487/1157) 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-21T09:49:28.8246029Z PASS [ 0.009s] ( 488/1157) 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-21T09:49:28.8248787Z PASS [ 0.018s] ( 489/1157) spt-daemon release::tests::valid_release_verifies_and_artifact_matches test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.8252499Z PASS [ 0.008s] ( 490/1157) spt-daemon resting::tests::knob_chain_resolves_global_node_endpoint test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.8301951Z PASS [ 0.010s] ( 491/1157) 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-21T09:49:28.8311226Z PASS [ 0.007s] ( 492/1157) spt-daemon resting::tests::transition_table_matches_the_context_model test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.8325428Z PASS [ 0.008s] ( 493/1157) 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-21T09:49:28.8332554Z PASS [ 0.008s] ( 494/1157) spt-daemon seedmap::tests::put_refreshes_existing test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.8383686Z PASS [ 0.008s] ( 495/1157) 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-21T09:49:28.8390564Z PASS [ 0.014s] ( 496/1157) spt-daemon seedmap::tests::put_then_take_consumes_once test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.8406170Z PASS [ 0.007s] ( 497/1157) spt-daemon seedproofx::grace_tests::grade_truth_table test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.8418523Z PASS [ 0.034s] ( 498/1157) spt-daemon release::tests::verify_detached_signs_raw_artifact_bytes test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.8451261Z PASS [ 0.014s] ( 499/1157) spt-daemon seedmap::tests::stop_op_acks_then_serve_returns test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.8451897Z PASS [ 0.013s] ( 500/1157) spt-daemon seedmap::tests::take_absent_is_none test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.8455932Z PASS [ 0.006s] ( 501/1157) 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-21T09:49:28.8456980Z PASS [ 0.007s] ( 502/1157) 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-21T09:49:28.8480678Z PASS [ 0.007s] ( 503/1157) spt-daemon seedproofx::roster_tests::empty_roster_frame_round_trips test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.8492683Z PASS [ 0.007s] ( 504/1157) 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-21T09:49:28.8525928Z PASS [ 0.007s] ( 505/1157) 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-21T09:49:28.8527202Z PASS [ 0.008s] ( 506/1157) spt-daemon seedproofx::roster_tests::malformed_roster_frame_rejected test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.8528141Z PASS [ 0.008s] ( 507/1157) spt-daemon seedproofx::roster_tests::roster_frame_round_trips test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.8539047Z PASS [ 0.008s] ( 508/1157) 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-21T09:49:28.8552607Z PASS [ 0.007s] ( 509/1157) 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-21T09:49:28.8575496Z PASS [ 0.008s] ( 510/1157) 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-21T09:49:28.8602004Z PASS [ 0.007s] ( 511/1157) spt-daemon shellchan::tests::drive_frame_shape_mirrors_sensory test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.8603036Z PASS [ 0.007s] ( 512/1157) 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-21T09:49:28.8626880Z PASS [ 0.008s] ( 513/1157) spt-daemon service::tests::service_ignored_under_spt_home_override test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.8627800Z PASS [ 0.009s] ( 514/1157) spt-daemon shellchan::tests::frames_compose_and_stamp_roundtrips test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.8628607Z PASS [ 0.007s] ( 515/1157) spt-daemon shellchan::tests::sensory_text_file_frames_shape test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.8653173Z PASS [ 0.295s] ( 516/1157) spt-daemon psyrelay::tests::notify_reaches_own_user_only test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.8667578Z PASS [ 0.009s] ( 517/1157) spt-daemon shellchan::tests::vocab_check_bounds_ops_and_args test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.8697858Z PASS [ 0.009s] ( 518/1157) 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-21T09:49:28.8705350Z PASS [ 0.010s] ( 519/1157) 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-21T09:49:28.8755415Z PASS [ 0.015s] ( 520/1157) spt-daemon shelldisc::tests::discovery_own_plus_broadcast_gated_instantiable test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.8767886Z PASS [ 0.010s] ( 521/1157) 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-21T09:49:28.8772647Z PASS [ 0.012s] ( 522/1157) 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-21T09:49:28.8787475Z PASS [ 0.009s] ( 523/1157) spt-daemon shellhost::tests::launch_fails_closed_on_bad_templates test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.8806631Z PASS [ 0.279s] ( 524/1157) spt-daemon psyrelay::tests::reply_relays_to_inbound_sender test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.8813856Z PASS [ 0.011s] ( 525/1157) 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-21T09:49:28.8834750Z PASS [ 0.008s] ( 526/1157) spt-daemon shellhost::tests::link_key_and_frame_mac_roundtrip test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.8842025Z PASS [ 0.007s] ( 527/1157) spt-daemon shellwake::tests::backoff_curve_doubles_to_the_cap test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.8887157Z PASS [ 0.010s] ( 528/1157) spt-daemon shellwake::tests::reconcile_resolves_profile_overlay test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.8905633Z PASS [ 0.010s] ( 529/1157) 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-21T09:49:28.8922888Z PASS [ 0.077s] ( 530/1157) 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-21T09:49:28.8952236Z PASS [ 0.014s] ( 531/1157) 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-21T09:49:28.8971023Z PASS [ 0.008s] ( 532/1157) spt-daemon shellwake::tests::watcher_opcode_exit_fires_resolution_once test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.8971590Z PASS [ 0.007s] ( 533/1157) spt-daemon sync::tests::gate_decision_table test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.9024483Z PASS [ 0.085s] ( 534/1157) spt-daemon resting::tests::rest_edges_cascade_shells_with_divergence test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.9038549Z PASS [ 0.007s] ( 535/1157) spt-daemon translation::tests::key_cmd_parses_each_wire_shape test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.9039650Z PASS [ 0.007s] ( 536/1157) 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-21T09:49:28.9086574Z PASS [ 0.031s] ( 537/1157) spt-daemon shellwake::tests::reconcile_flips_watchers_with_instance_state test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.9087694Z PASS [ 0.006s] ( 538/1157) spt-daemon translation::tests::key_to_bytes_send_keys_map test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.9107961Z PASS [ 0.007s] ( 539/1157) 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-21T09:49:28.9109209Z PASS [ 0.007s] ( 540/1157) 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-21T09:49:28.9157546Z PASS [ 0.007s] ( 541/1157) spt-daemon tunnelhub::tests::clear_evicts_the_entry test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.9169589Z PASS [ 0.008s] ( 542/1157) spt-daemon transport::tests::local_socket_rejects_wrong_role test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.9171608Z PASS [ 0.006s] ( 543/1157) spt-daemon tunnelhub::tests::entries_are_per_owner test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.9172920Z PASS [ 0.007s] ( 544/1157) spt-daemon tunnelhub::tests::dead_generation_stream_is_never_surfaced test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.9230090Z PASS [ 0.007s] ( 545/1157) 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-21T09:49:28.9233681Z PASS [ 0.006s] ( 546/1157) 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-21T09:49:28.9234305Z PASS [ 0.006s] ( 547/1157) spt-daemon update::tests::apply_refuses_non_brain_only_plan test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.9240388Z PASS [ 0.007s] ( 548/1157) 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-21T09:49:28.9245882Z PASS [ 0.040s] ( 549/1157) 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-21T09:49:28.9300858Z PASS [ 0.006s] ( 550/1157) 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-21T09:49:28.9301954Z PASS [ 0.007s] ( 551/1157) 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-21T09:49:28.9376922Z PASS [ 0.008s] ( 552/1157) 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-21T09:49:28.9377777Z PASS [ 0.008s] ( 553/1157) spt-daemon wan::tests::origin_user_backed_matrix test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.9397284Z PASS [ 0.015s] ( 554/1157) 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-21T09:49:28.9445399Z PASS [ 0.007s] ( 555/1157) spt-daemon xfer::tests::resolve_under_confines_to_root test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.9479895Z PASS [ 0.024s] ( 556/1157) 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-21T09:49:28.9535249Z PASS [ 0.070s] ( 557/1157) 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-21T09:49:28.9570509Z PASS [ 0.335s] ( 558/1157) spt-daemon psyrelay::tests::spoofed_routing_is_stripped_and_restamped test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.9572240Z PASS [ 0.033s] ( 559/1157) 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-21T09:49:28.9604755Z PASS [ 0.023s] ( 560/1157) 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-21T09:49:28.9688349Z PASS [ 0.207s] ( 561/1157) spt-daemon relay::tests::run_honors_stop test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.9689279Z PASS [ 0.009s] ( 562/1157) spt-daemon::netbroker netless_broker_probes_gracefully test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.9921364Z PASS [ 0.035s] ( 563/1157) spt-daemon::netbroker broker_owns_endpoint_and_reports_status test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:28.9989678Z PASS [ 0.030s] ( 564/1157) spt-daemon::netbroker unknown_net_frame_is_reported_not_fatal test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:29.0248177Z PASS [ 0.131s] ( 565/1157) spt-daemon sync::tests::reconcile_driver_structurally_excludes_live_role test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:29.0356974Z PASS [ 0.067s] ( 566/1157) 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-21T09:49:29.0358011Z PASS [ 0.082s] ( 567/1157) spt-daemon::netbroker brain_dials_second_broker_over_loopback test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:29.0445918Z PASS [ 0.287s] ( 568/1157) spt-daemon relay::tests::respawn_loses_no_spooled_message test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:29.0569727Z PASS [ 0.194s] ( 569/1157) 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-21T09:49:29.0750286Z PASS [ 0.212s] ( 570/1157) 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-21T09:49:29.1213702Z PASS [ 0.226s] ( 571/1157) spt-daemon sync::tests::select_refs_scopes_two_tiers test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:29.1927983Z PASS [ 0.117s] ( 572/1157) spt-daemon::propagate rollback_offer_is_rejected_before_any_fetch test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:29.2409634Z PASS [ 0.242s] ( 573/1157) spt-daemon::netstream sender_brain_restart_redrive_is_exactly_once test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:29.3342838Z PASS [ 0.142s] ( 574/1157) 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-21T09:49:29.3430486Z PASS [ 0.394s] ( 575/1157) spt-daemon::mesh staggered_offliner_still_meshes test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:29.3501985Z PASS [ 0.109s] ( 576/1157) spt-daemon::propagate untrusted_origin_gets_no_offer test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:29.3751354Z PASS [ 0.351s] ( 577/1157) 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-21T09:49:29.3897623Z PASS [ 0.354s] ( 578/1157) 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-21T09:49:29.3924565Z PASS [ 0.448s] ( 579/1157) 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-21T09:49:29.3959763Z PASS [ 0.351s] ( 580/1157) spt-daemon::presence presence_survives_brain_restart_with_cursor_resume test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:29.3969116Z PASS [ 0.457s] ( 581/1157) spt-daemon::access whitelist_refuses_exempts_replies_and_admits_listed test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:29.3989169Z PASS [ 1.080s] ( 582/1157) spt-daemon nethost::tests::loopback_tunnel_backpressures_without_loss test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:29.4084782Z PASS [ 0.416s] ( 583/1157) 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-21T09:49:29.4423583Z PASS [ 0.385s] ( 584/1157) 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-21T09:49:29.4682271Z PASS [ 0.432s] ( 585/1157) 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-21T09:49:29.4770084Z PASS [ 0.068s] ( 586/1157) 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-21T09:49:29.5016618Z PASS [ 0.380s] ( 587/1157) 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-21T09:49:29.5513556Z PASS [ 0.216s] ( 588/1157) spt-daemon::propagate update_set_propagates_selected_platform_artifact test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:29.5623195Z PASS [ 0.094s] ( 589/1157) spt-daemon::seedproofx proven_verdict_is_the_shared_set test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:29.5839928Z PASS [ 0.187s] ( 590/1157) spt-daemon::rosterprop roster_exchange_never_leaks_unproven_subnets test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:29.5841390Z PASS [ 0.192s] ( 591/1157) spt-daemon::reseed benign_offliner_is_reseeded_across_a_rotation test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:29.5861649Z PASS [ 0.187s] ( 592/1157) spt-daemon::rosterprop roster_propagates_transitively_on_connect test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:29.6534893Z PASS [ 0.264s] ( 593/1157) 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-21T09:49:29.7387598Z PASS [ 0.152s] ( 594/1157) 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-21T09:49:29.8953114Z PASS [ 0.553s] ( 595/1157) spt-daemon::pump pump_and_dispatch_self_drive_the_subnet test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:29.9034657Z PASS [ 0.008s] ( 596/1157) spt-live context::tests::direct_always_writes test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:29.9107372Z PASS [ 0.172s] ( 597/1157) spt-daemon::xfer push_survives_target_brain_restart_exactly_once test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:29.9108592Z PASS [ 0.007s] ( 598/1157) spt-live context::tests::identified_write_stamps_advancing_vector test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:29.9152057Z PASS [ 0.004s] ( 599/1157) spt-live context::tests::llm_over_llm_writes test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:29.9152827Z PASS [ 0.004s] ( 600/1157) spt-live context::tests::llm_past_window_writes test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:29.9191392Z PASS [ 0.004s] ( 601/1157) spt-live context::tests::llm_within_window_suppressed test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:29.9195793Z PASS [ 0.004s] ( 602/1157) spt-live context::tests::pre_identity_write_stamps_v1_shape test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:29.9245093Z PASS [ 0.005s] ( 603/1157) spt-live context::tests::write_context_suppresses_stale_llm test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:29.9428537Z PASS [ 0.289s] ( 604/1157) 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-21T09:49:29.9495822Z PASS [ 0.025s] ( 605/1157) spt-live digest::tests::extracts_records_from_the_located_source test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:29.9535059Z PASS [ 0.004s] ( 606/1157) spt-live digest::tests::missing_source_file_is_read_error test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:29.9540047Z PASS [ 0.370s] ( 607/1157) 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-21T09:49:29.9575630Z PASS [ 0.004s] ( 608/1157) spt-live digest::tests::no_source_errors test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:29.9676392Z PASS [ 0.025s] ( 609/1157) spt-live digest::tests::falls_back_to_history_locate_template test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:29.9787376Z PASS [ 0.395s] ( 610/1157) spt-daemon::wanmsg receiver_restart_replays_feed_without_double_delivery test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:29.9808482Z PASS [ 0.027s] ( 611/1157) spt-live echo::tests::echo_child_is_recursion_guarded test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:29.9821170Z PASS [ 0.608s] ( 612/1157) 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-21T09:49:29.9827716Z PASS [ 0.004s] ( 613/1157) spt-live echo::tests::provenance_is_stamped test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:29.9828497Z PASS [ 0.025s] ( 614/1157) spt-live echo::tests::echo_consumes_history_and_writes_commune test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:29.9865560Z PASS [ 0.004s] ( 615/1157) spt-live history::tests::missing_fetcher_field_errors test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:29.9905837Z PASS [ 0.004s] ( 616/1157) spt-live history::tests::native_missing_log_is_empty test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:29.9926938Z PASS [ 0.025s] ( 617/1157) spt-live echo::tests::echo_nonzero_errors test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:29.9951883Z PASS [ 0.005s] ( 618/1157) spt-live history::tests::native_reads_logged_records test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.0066017Z PASS [ 0.024s] ( 619/1157) spt-live history::tests::fetcher_yields_records test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.0071690Z PASS [ 0.024s] ( 620/1157) spt-live history::tests::locate_normalize_reads_and_normalizes test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.0115800Z PASS [ 0.004s] ( 621/1157) spt-live ingest::tests::no_drops_is_empty test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.0931270Z PASS [ 0.542s] ( 622/1157) spt-daemon::sync torn_pull_recovers_by_repulling test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.1005918Z PASS [ 0.089s] ( 623/1157) spt-live ingest::tests::stale_commune_suppressed_but_deleted test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.1051631Z PASS [ 0.005s] ( 624/1157) spt-live inject::tests::long_body_is_capped test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.1098638Z PASS [ 0.005s] ( 625/1157) spt-live inject::tests::missing_perch_is_best_effort test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.1142623Z PASS [ 0.004s] ( 626/1157) spt-live inject::tests::tap_appends_a_context_entry test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.1192166Z PASS [ 0.005s] ( 627/1157) spt-live outbound::tests::empty_body_parses_to_empty_intent test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.1232814Z PASS [ 0.004s] ( 628/1157) spt-live outbound::tests::malformed_and_chunk_lines_are_skipped test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.1269750Z PASS [ 0.132s] ( 629/1157) spt-live ingest::tests::commune_drop_is_ingested_and_deleted test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.1271357Z PASS [ 0.004s] ( 630/1157) spt-live outbound::tests::non_authorable_types_are_ignored test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.1309669Z PASS [ 0.004s] ( 631/1157) spt-live outbound::tests::prose_only_yields_nothing test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.1310394Z PASS [ 0.004s] ( 632/1157) spt-live outbound::tests::parses_reply_and_notify_in_order test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.1349243Z PASS [ 0.004s] ( 633/1157) spt-live psyche::tests::prompt_includes_time_and_event test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.1350202Z PASS [ 0.004s] ( 634/1157) spt-live outbound::tests::spoofed_routing_attrs_are_unrepresentable test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.1379912Z PASS [ 0.131s] ( 635/1157) spt-live ingest::tests::ingest_never_writes_the_live_role test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.1388636Z PASS [ 0.004s] ( 636/1157) spt-live psyche::tests::prompt_without_event test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.1423231Z PASS [ 0.004s] ( 637/1157) spt-live pulse::tests::echo_gate_fires_exactly_once test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.1469364Z PASS [ 0.004s] ( 638/1157) spt-live pulse::tests::tick_reports_idle test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.1608852Z PASS [ 0.026s] ( 639/1157) 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-21T09:49:30.1648123Z PASS [ 0.172s] ( 640/1157) spt-live ingest::tests::both_drops_ingested test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.2275412Z PASS [ 0.308s] ( 641/1157) spt-live digest::tests::extractor_timeout_errors test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.2495061Z PASS [ 0.089s] ( 642/1157) spt-live reconcile::tests::no_conflict_is_a_noop test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.2691111Z PASS [ 0.130s] ( 643/1157) spt-live pulse::tests::tick_ingests_drops test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.2750866Z PASS [ 0.025s] ( 644/1157) spt-live resume::tests::continue_existing_resumes_session test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.2866455Z PASS [ 0.306s] ( 645/1157) spt-live history::tests::fetcher_timeout_errors test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.2989648Z PASS [ 0.152s] ( 646/1157) spt-live reconcile::tests::failed_turn_preserves_everything test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.3036619Z PASS [ 0.005s] ( 647/1157) spt-live resume::tests::missing_key_errors_before_spawn test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.3125867Z PASS [ 0.026s] ( 648/1157) spt-live resume::tests::fresh_with_preload_launches_preloaded test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.3166472Z PASS [ 0.004s] ( 649/1157) spt-live signoff::tests::echo_precedes_signoff_compose test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.3206512Z PASS [ 0.004s] ( 650/1157) spt-live signoff::tests::missing_session_skips_echo test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.3246475Z PASS [ 0.004s] ( 651/1157) spt-live signoff::tests::recovered_self_is_not_signed_off test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.3289171Z PASS [ 0.004s] ( 652/1157) spt-live signoff::tests::stale_signoff_swept test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.3399551Z PASS [ 0.247s] ( 653/1157) spt-live ingest::tests::two_slice_drop_routes_per_tier test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.3540491Z PASS [ 0.025s] ( 654/1157) spt-live turn::tests::empty_stdout_is_an_error test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.3649323Z PASS [ 0.025s] ( 655/1157) spt-live turn::tests::turn_captures_stdout test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.3688744Z PASS [ 0.004s] ( 656/1157) spt-msg deliver::tests::deferred_send_validates test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.3800503Z PASS [ 0.215s] ( 657/1157) spt-live reconcile::tests::reconcile_merges_and_clears test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.3806876Z PASS [ 0.153s] ( 658/1157) spt-live reconcile::tests::suppressed_write_preserves_artifacts test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.4103109Z PASS [ 0.141s] ( 659/1157) spt-live resume::tests::download_composes_two_tiers test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.4631775Z PASS [ 0.109s] ( 660/1157) 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-21T09:49:30.4672360Z PASS [ 0.004s] ( 661/1157) spt-msg emit::tests::anonymous_still_enveloped test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.4696172Z PASS [ 0.194s] ( 662/1157) 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-21T09:49:30.4712958Z PASS [ 0.004s] ( 663/1157) spt-msg emit::tests::multiline_body_escapes_and_round_trips test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.4738684Z PASS [ 0.004s] ( 664/1157) 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-21T09:49:30.4762914Z PASS [ 0.005s] ( 665/1157) spt-msg emit::tests::structural_renders_msg_envelope test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.4782141Z PASS [ 0.004s] ( 666/1157) 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-21T09:49:30.4806458Z PASS [ 0.004s] ( 667/1157) 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-21T09:49:30.4821533Z PASS [ 0.004s] ( 668/1157) spt-msg emit::tests::whole_render_never_chunks test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.5109510Z PASS [ 0.142s] ( 669/1157) spt-msg deliver::tests::offline_existing_perch_spools test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.5141567Z PASS [ 0.104s] ( 670/1157) spt-msg deliver::tests::send_outcome_mapping test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.5145716Z PASS [ 0.134s] ( 671/1157) spt-msg deliver::tests::recycled_pid_address_does_not_misdeliver test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.5396456Z PASS [ 0.159s] ( 672/1157) spt-msg deliver::tests::online_delivers_via_tcp_without_spooling test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.5701316Z PASS [ 0.266s] ( 673/1157) spt-live signoff::tests::boundary_writes_resume_commune test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.5880252Z PASS [ 0.107s] ( 674/1157) spt-msg listener::tests::bind_registers_and_round_trips test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.6118901Z PASS [ 1.655s] ( 675/1157) 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-21T09:49:30.6127828Z PASS [ 0.131s] ( 676/1157) spt-msg listener::tests::blocking_accepts_within_window test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.6130270Z PASS [ 0.099s] ( 677/1157) spt-msg listener::tests::drop_unregisters_address test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.6173660Z PASS [ 0.004s] ( 678/1157) spt-msg ring::tests::ring_no_perch test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.7058470Z PASS [ 0.195s] ( 679/1157) spt-msg listener::tests::blocking_times_out_when_idle test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.7308263Z PASS [ 1.168s] ( 680/1157) 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-21T09:49:30.7353882Z PASS [ 0.005s] ( 681/1157) spt-msg wire::tests::decode_rejects_overrunning_from_len test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.7393010Z PASS [ 0.200s] ( 682/1157) spt-msg ready::tests::recv_gets_live_tcp_message test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.7418523Z PASS [ 0.004s] ( 683/1157) spt-msg wire::tests::encode_decode_round_trips_structural test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.7432923Z PASS [ 0.004s] ( 684/1157) spt-msg wire::tests::encode_empty_from_is_anonymous test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.7434455Z PASS [ 0.004s] ( 685/1157) spt-msg wire::tests::frame_round_trips_over_loopback test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.7471586Z PASS [ 0.004s] ( 686/1157) spt-msg wire::tests::typed_event_body_rides_verbatim test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.7472358Z PASS [ 0.004s] ( 687/1157) spt-msg wire::tests::oversized_length_prefix_rejected test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.7491876Z PASS [ 0.235s] ( 688/1157) spt-msg ready::tests::backlog_drains_on_start test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.7679664Z PASS [ 0.180s] ( 689/1157) spt-msg ready::tests::start_ledgers_a_boot_session_row test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.7795159Z PASS [ 0.030s] ( 690/1157) spt-net net::attach::tests::attach_intents_round_trip test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.7796332Z PASS [ 0.012s] ( 691/1157) 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-21T09:49:30.7860031Z PASS [ 0.006s] ( 692/1157) spt-net net::attach::tests::record_split_across_chunks_reassembles test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.7865436Z PASS [ 0.007s] ( 693/1157) 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-21T09:49:30.7866362Z PASS [ 0.216s] ( 694/1157) spt-msg ready::tests::soft_cleanup_preserves_spool_and_info test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.7898496Z PASS [ 0.178s] ( 695/1157) spt-msg ready::tests::start_registers_resolvable_perch test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.7933055Z PASS [ 0.007s] ( 696/1157) 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-21T09:49:30.7982889Z PASS [ 0.012s] ( 697/1157) 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-21T09:49:30.8011055Z PASS [ 0.008s] ( 698/1157) spt-net net::mesh::seedproof::tests::cross_connection_replay_fails test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.8019500Z PASS [ 0.185s] ( 699/1157) 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-21T09:49:30.8046657Z PASS [ 0.006s] ( 700/1157) spt-net net::mesh::seedproof::tests::forged_proof_fails test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.8076406Z PASS [ 0.006s] ( 701/1157) 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-21T09:49:30.8110733Z PASS [ 0.006s] ( 702/1157) 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-21T09:49:30.8140119Z PASS [ 0.006s] ( 703/1157) spt-net net::mesh::seedproof::tests::mutual_requires_both_sides test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.8163100Z PASS [ 0.014s] ( 704/1157) 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-21T09:49:30.8176921Z PASS [ 0.007s] ( 705/1157) 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-21T09:49:30.8202408Z PASS [ 0.006s] ( 706/1157) 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-21T09:49:30.8234554Z PASS [ 0.007s] ( 707/1157) spt-net net::mesh::seedproof::tests::wrong_epoch_fails test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.8240435Z PASS [ 0.006s] ( 708/1157) spt-net net::mesh::seedproof::tests::wrong_subnet_fails test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.8267860Z PASS [ 0.006s] ( 709/1157) spt-net net::notif::tests::forged_origin_field_is_inert test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.8299857Z PASS [ 0.006s] ( 710/1157) spt-net net::notif::tests::record_split_across_chunks_reassembles test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.8300998Z PASS [ 0.006s] ( 711/1157) 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-21T09:49:30.8340329Z PASS [ 0.007s] ( 712/1157) 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-21T09:49:30.8385054Z PASS [ 0.008s] ( 713/1157) 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-21T09:49:30.8417951Z PASS [ 0.008s] ( 714/1157) 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-21T09:49:30.8441996Z PASS [ 0.006s] ( 715/1157) 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-21T09:49:30.8444873Z PASS [ 0.232s] ( 716/1157) spt-msg ring::tests::ring_gets_reply_and_cleans_up test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.8477944Z PASS [ 0.006s] ( 717/1157) 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-21T09:49:30.8508362Z PASS [ 0.007s] ( 718/1157) 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-21T09:49:30.8538766Z PASS [ 0.006s] ( 719/1157) 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-21T09:49:30.8563961Z PASS [ 0.006s] ( 720/1157) 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-21T09:49:30.8602241Z PASS [ 0.006s] ( 721/1157) spt-net net::pairing::ratelimit::tests::backoff_is_per_subnet test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.8618231Z PASS [ 0.005s] ( 722/1157) spt-net net::pairing::ratelimit::tests::failures_impose_exponential_backoff test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.8663098Z PASS [ 0.006s] ( 723/1157) 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-21T09:49:30.8675648Z PASS [ 0.006s] ( 724/1157) 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-21T09:49:30.8725486Z PASS [ 0.006s] ( 725/1157) spt-net net::pairing::ratelimit::tests::success_clears_accumulated_backoff test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.8731946Z PASS [ 0.006s] ( 726/1157) 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-21T09:49:30.8792779Z PASS [ 0.006s] ( 727/1157) spt-net net::pairing::rendezvous::tests::token_is_deterministic test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.8793790Z PASS [ 0.007s] ( 728/1157) 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-21T09:49:30.8794319Z PASS [ 0.093s] ( 729/1157) spt-net net::endpoint::tests::endpoint_id_binds_to_identity test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.8861462Z PASS [ 0.007s] ( 730/1157) 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-21T09:49:30.8866747Z PASS [ 0.007s] ( 731/1157) 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-21T09:49:30.9131748Z PASS [ 1.412s] ( 732/1157) 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-21T09:49:30.9290974Z PASS [ 0.043s] ( 733/1157) 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-21T09:49:30.9291833Z PASS [ 0.139s] ( 734/1157) spt-net net::endpoint::tests::two_endpoints_loopback_echo test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.9526775Z PASS [ 0.123s] ( 735/1157) 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-21T09:49:30.9585459Z PASS [ 0.079s] ( 736/1157) 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-21T09:49:30.9679143Z PASS [ 0.081s] ( 737/1157) spt-net net::pairing::spake::tests::stale_epoch_fails test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.9753494Z PASS [ 0.007s] ( 738/1157) 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-21T09:49:30.9827401Z PASS [ 0.007s] ( 739/1157) spt-net net::pairing::totp::tests::debug_redacts_seed test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.9901206Z PASS [ 0.007s] ( 740/1157) spt-net net::pairing::totp::tests::generated_seeds_are_distinct test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.9973279Z PASS [ 0.084s] ( 741/1157) spt-net net::pairing::spake::tests::stale_step_fails test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:30.9977094Z PASS [ 0.007s] ( 742/1157) 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-21T09:49:31.0047001Z PASS [ 0.007s] ( 743/1157) 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-21T09:49:31.0049616Z PASS [ 0.007s] ( 744/1157) 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-21T09:49:31.0086978Z PASS [ 0.080s] ( 745/1157) spt-net net::pairing::spake::tests::tampered_tag_fails test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.0092854Z PASS [ 0.080s] ( 746/1157) spt-net net::pairing::spake::tests::substituted_pubkey_fails test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.0119783Z PASS [ 0.007s] ( 747/1157) 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-21T09:49:31.0120800Z PASS [ 0.007s] ( 748/1157) 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-21T09:49:31.0153081Z PASS [ 0.006s] ( 749/1157) 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-21T09:49:31.0164629Z PASS [ 0.007s] ( 750/1157) 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-21T09:49:31.0190429Z PASS [ 0.007s] ( 751/1157) 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-21T09:49:31.0194763Z PASS [ 0.007s] ( 752/1157) 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-21T09:49:31.0225499Z PASS [ 0.007s] ( 753/1157) spt-net net::pairing::transcript::tests::message_order_is_bound test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.0228571Z PASS [ 0.006s] ( 754/1157) 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-21T09:49:31.0279471Z PASS [ 0.281s] ( 755/1157) spt-msg::killer_quickstart offline_then_online_delivers_backlog test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.0295907Z PASS [ 0.007s] ( 756/1157) 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-21T09:49:31.0296646Z PASS [ 0.007s] ( 757/1157) 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-21T09:49:31.0321245Z PASS [ 0.079s] ( 758/1157) 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-21T09:49:31.0356207Z PASS [ 0.006s] ( 759/1157) 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-21T09:49:31.0420425Z PASS [ 0.083s] ( 760/1157) spt-net net::pairing::spake::tests::wrong_subnet_fails test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.0889455Z PASS [ 0.070s] ( 761/1157) spt-net net::pairing::wire::tests::busy_subnet_refuses_ceremony test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.0972232Z PASS [ 0.008s] ( 762/1157) 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-21T09:49:31.1052124Z PASS [ 0.008s] ( 763/1157) spt-net net::registry::tests::distinct_nodes_are_separate_instances test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.1059446Z PASS [ 0.070s] ( 764/1157) spt-net net::pairing::wire::tests::unknown_subnet_is_rejected test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.1060667Z PASS [ 0.074s] ( 765/1157) spt-net net::pairing::wire::tests::stale_step_is_rejected test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.1069696Z PASS [ 0.359s] ( 766/1157) 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-21T09:49:31.1133300Z PASS [ 0.008s] ( 767/1157) 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-21T09:49:31.1137436Z PASS [ 0.008s] ( 768/1157) 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-21T09:49:31.1138371Z PASS [ 0.008s] ( 769/1157) 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-21T09:49:31.1140781Z PASS [ 0.007s] ( 770/1157) spt-net net::registry::tests::exclusion_prunes_cross_subnet_ambiguity test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.1193049Z PASS [ 0.413s] ( 771/1157) spt-msg ring::tests::ring_timeout_cleans_up test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.1219163Z PASS [ 0.008s] ( 772/1157) spt-net net::registry::tests::join_fresh_id_is_inserted test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.1220310Z PASS [ 0.008s] ( 773/1157) 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-21T09:49:31.1221420Z PASS [ 0.008s] ( 774/1157) 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-21T09:49:31.1222423Z PASS [ 0.009s] ( 775/1157) 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-21T09:49:31.1281133Z PASS [ 0.009s] ( 776/1157) 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-21T09:49:31.1302324Z PASS [ 0.008s] ( 777/1157) spt-net net::registry::tests::newer_epoch_supersedes_same_node test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.1306587Z PASS [ 0.008s] ( 778/1157) 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-21T09:49:31.1307725Z PASS [ 0.008s] ( 779/1157) 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-21T09:49:31.1308759Z PASS [ 0.008s] ( 780/1157) 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-21T09:49:31.1368543Z PASS [ 0.009s] ( 781/1157) 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-21T09:49:31.1376198Z PASS [ 0.007s] ( 782/1157) spt-net net::registry::tests::registry_serde_roundtrips test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.1377560Z PASS [ 0.007s] ( 783/1157) spt-net net::registry::tests::rename_collision_refuses_whole_ripple test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.1379589Z PASS [ 0.007s] ( 784/1157) 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-21T09:49:31.1380494Z PASS [ 0.007s] ( 785/1157) 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-21T09:49:31.1449900Z PASS [ 0.008s] ( 786/1157) 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-21T09:49:31.1451025Z PASS [ 0.008s] ( 787/1157) spt-net net::registry::tests::resolve_across_unique_id_resolves test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.1451912Z PASS [ 0.007s] ( 788/1157) 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-21T09:49:31.1453253Z PASS [ 0.007s] ( 789/1157) spt-net net::registry::tests::resolve_prefers_local_instance test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.1454015Z PASS [ 0.008s] ( 790/1157) spt-net net::registry::tests::resolve_multiple_live_nodes_refuses test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.1521852Z PASS [ 0.007s] ( 791/1157) 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-21T09:49:31.1524307Z PASS [ 0.007s] ( 792/1157) 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-21T09:49:31.1527669Z PASS [ 0.007s] ( 793/1157) spt-net net::registry::tests::resource_projection_threads_node_label test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.1529717Z PASS [ 0.008s] ( 794/1157) 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-21T09:49:31.1531012Z PASS [ 0.008s] ( 795/1157) 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-21T09:49:31.1533014Z PASS [ 0.309s] ( 796/1157) spt-net net::pairing::ntp::tests::unreachable_server_falls_back test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.1606634Z PASS [ 0.008s] ( 797/1157) 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-21T09:49:31.1608182Z PASS [ 0.008s] ( 798/1157) 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-21T09:49:31.1609418Z PASS [ 0.008s] ( 799/1157) 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-21T09:49:31.1610530Z PASS [ 0.008s] ( 800/1157) 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-21T09:49:31.1611249Z PASS [ 0.009s] ( 801/1157) spt-net net::registry::tests::suspended_is_addressable_and_roundtrips test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.1612499Z PASS [ 0.008s] ( 802/1157) 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-21T09:49:31.1693159Z PASS [ 0.009s] ( 803/1157) spt-net net::rest::tests::records_round_trip_and_degrade test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.1694262Z PASS [ 0.008s] ( 804/1157) spt-net net::shelllink::tests::records_round_trip_and_degrade test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.1697095Z PASS [ 0.009s] ( 805/1157) spt-net net::serveprobe::tests::records_round_trip_and_degrade test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.1704507Z PASS [ 0.008s] ( 806/1157) spt-net net::sync::tests::record_split_across_chunks_reassembles test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.1705384Z PASS [ 0.008s] ( 807/1157) spt-net net::sync::tests::forged_origin_field_is_inert test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.1706234Z PASS [ 0.008s] ( 808/1157) 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-21T09:49:31.1707144Z PASS [ 0.151s] ( 809/1157) 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-21T09:49:31.1781070Z PASS [ 0.008s] ( 810/1157) spt-net net::wanmsg::tests::forged_origin_field_is_inert test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.1782235Z PASS [ 0.009s] ( 811/1157) spt-net net::update::tests::record_split_across_chunks_reassembles test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.1783242Z PASS [ 0.009s] ( 812/1157) 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-21T09:49:31.1784763Z PASS [ 0.009s] ( 813/1157) 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-21T09:49:31.1785707Z PASS [ 0.009s] ( 814/1157) 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-21T09:49:31.1786556Z PASS [ 0.008s] ( 815/1157) spt-net net::xfer::tests::forged_origin_field_is_inert test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.1787298Z PASS [ 0.009s] ( 816/1157) spt-net net::update::tests::forged_origin_field_is_inert test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.1833675Z PASS [ 0.153s] ( 817/1157) spt-net net::pairing::wire::tests::repair_member_keeps_seed test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.1840738Z PASS [ 0.006s] ( 818/1157) spt-proto addr::tests::parses_every_qualifier_combination test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.1843039Z PASS [ 0.006s] ( 819/1157) spt-proto addr::tests::rejects_doubled_delimiters test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.1844178Z PASS [ 0.005s] ( 820/1157) spt-proto chunk::tests::malformed_parts_return_none test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.1845207Z PASS [ 0.006s] ( 821/1157) spt-proto addr::tests::rejects_empty_or_bad_components test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.1846120Z PASS [ 0.006s] ( 822/1157) spt-proto addr::tests::display_round_trips test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.1882631Z PASS [ 0.010s] ( 823/1157) spt-net net::xfer::tests::record_split_across_chunks_reassembles test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.1883753Z PASS [ 0.160s] ( 824/1157) 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-21T09:49:31.1884765Z PASS [ 0.010s] ( 825/1157) 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-21T09:49:31.1898855Z PASS [ 0.007s] ( 826/1157) spt-proto chunk::tests::missing_middle_part_is_dropped test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.1900324Z PASS [ 0.006s] ( 827/1157) 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-21T09:49:31.1901345Z PASS [ 0.006s] ( 828/1157) spt-proto chunk::tests::reassemble_stream_handles_mixed_traffic test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.1903441Z PASS [ 0.006s] ( 829/1157) spt-proto chunk::tests::short_line_passes_through_unchunked test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.1936028Z PASS [ 0.009s] ( 830/1157) spt-proto chunk::tests::orphan_group_without_head_is_dropped test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.1953513Z PASS [ 0.006s] ( 831/1157) spt-proto endpoint::tests::day_one_tags_round_trip test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.1954655Z PASS [ 0.005s] ( 832/1157) spt-proto endpoint::tests::agent_vs_shell_split test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.1955767Z PASS [ 0.153s] ( 833/1157) 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-21T09:49:31.1956987Z PASS [ 0.005s] ( 834/1157) spt-proto envelope::tests::body_escape_is_cr_linesafe test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.1958212Z PASS [ 0.005s] ( 835/1157) spt-proto endpoint::tests::unknown_tag_tolerated_and_preserved test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.1959438Z PASS [ 0.005s] ( 836/1157) spt-proto endpoint::tests::shell_kind_round_trips test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.1960784Z PASS [ 0.005s] ( 837/1157) 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-21T09:49:31.1961919Z PASS [ 0.007s] ( 838/1157) spt-proto endpoint::tests::broker_and_node_families test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.1997683Z PASS [ 0.006s] ( 839/1157) spt-proto envelope::tests::from_attr_unescape_is_amp_last test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2001246Z PASS [ 0.006s] ( 840/1157) 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-21T09:49:31.2002395Z PASS [ 0.005s] ( 841/1157) spt-proto envelope::tests::parser_both_tags_present test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2003276Z PASS [ 0.006s] ( 842/1157) 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-21T09:49:31.2004508Z PASS [ 0.005s] ( 843/1157) 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-21T09:49:31.2005553Z PASS [ 0.005s] ( 844/1157) 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-21T09:49:31.2007609Z PASS [ 0.005s] ( 845/1157) 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-21T09:49:31.2009172Z PASS [ 0.005s] ( 846/1157) 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-21T09:49:31.2010273Z PASS [ 0.005s] ( 847/1157) spt-proto event::tests::alarm_event_round_trips test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2058779Z PASS [ 0.006s] ( 848/1157) spt-proto event::tests::attr_decode_is_amp_last test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2059990Z PASS [ 0.005s] ( 849/1157) spt-proto event::tests::malformed_inputs_return_none_without_panic test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2060877Z PASS [ 0.005s] ( 850/1157) spt-proto event::tests::typed_predicate_rejects_partials test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2062097Z PASS [ 0.006s] ( 851/1157) spt-proto event::tests::empty_body_envelope_parses test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2062922Z PASS [ 0.005s] ( 852/1157) spt-proto event::tests::typed_envelope_detected_and_parsed test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2063794Z PASS [ 0.006s] ( 853/1157) 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-21T09:49:31.2065016Z PASS [ 0.006s] ( 854/1157) 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-21T09:49:31.2065927Z PASS [ 0.006s] ( 855/1157) spt-proto event::tests::msg_event_round_trips test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2066652Z PASS [ 0.006s] ( 856/1157) spt-proto event::tests::attr_order_preserved test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2117836Z PASS [ 0.006s] ( 857/1157) spt-proto id::tests::accepts_japanese_scripts test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2118684Z PASS [ 0.006s] ( 858/1157) spt-proto event::tests::user_msg_identity_gate_truth_table test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2120398Z PASS [ 0.006s] ( 859/1157) spt-proto event::tests::user_msg_event_round_trips test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2121046Z PASS [ 0.005s] ( 860/1157) spt-proto id::tests::reports_bad_char_position test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2121748Z PASS [ 0.006s] ( 861/1157) 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-21T09:49:31.2122475Z PASS [ 0.006s] ( 862/1157) 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-21T09:49:31.2123166Z PASS [ 0.006s] ( 863/1157) spt-proto id::tests::accepts_plain_and_composite_ids test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2123799Z PASS [ 0.006s] ( 864/1157) spt-proto id::tests::rejects_empty_and_overlong test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2124606Z PASS [ 0.006s] ( 865/1157) spt-proto id::tests::rejects_path_whitespace_and_control test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2181359Z PASS [ 0.006s] ( 866/1157) spt-proto payload::tests::base64_known_vectors test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2182398Z PASS [ 0.006s] ( 867/1157) 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-21T09:49:31.2183373Z PASS [ 0.006s] ( 868/1157) spt-proto payload::tests::command_payload_round_trips test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2184170Z PASS [ 0.006s] ( 869/1157) spt-proto id::tests::reserves_address_delimiters test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2202471Z PASS [ 0.008s] ( 870/1157) spt-proto identity::tests::public_key_hex_round_trips test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2204931Z PASS [ 0.009s] ( 871/1157) spt-proto identity::tests::bad_inputs_error_without_panic test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2220184Z PASS [ 0.038s] ( 872/1157) spt-proto chunk::tests::split_then_reassemble_is_byte_identity test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2238778Z PASS [ 0.012s] ( 873/1157) spt-proto payload::tests::blob_padding_lengths_round_trip test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2241352Z PASS [ 0.005s] ( 874/1157) 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-21T09:49:31.2242863Z PASS [ 0.005s] ( 875/1157) spt-proto payload::tests::unknown_or_malformed_decodes_to_none test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2244281Z PASS [ 0.005s] ( 876/1157) spt-proto version::tests::current_version_self_compatible test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2245502Z PASS [ 0.005s] ( 877/1157) spt-proto payload::tests::text_payload_round_trips test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2261024Z PASS [ 0.006s] ( 878/1157) spt-proto version::tests::window_floor_saturates_at_zero test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2287967Z PASS [ 0.017s] ( 879/1157) spt-proto identity::tests::known_answer_fixed_seed_is_stable test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2335608Z PASS [ 0.009s] ( 880/1157) spt-runtime manifest::tests::fetcher_strategy_requires_fetcher_field test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2337844Z PASS [ 0.010s] ( 881/1157) 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-21T09:49:31.2339923Z PASS [ 0.010s] ( 882/1157) spt-runtime manifest::tests::digest_section_validation_errors test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2340930Z PASS [ 0.010s] ( 883/1157) spt-runtime manifest::tests::harness_fixture_parses_all_sections test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2343324Z PASS [ 0.005s] ( 884/1157) spt-runtime manifest::tests::inject_env_without_value_fails_validation test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2344771Z PASS [ 0.012s] ( 885/1157) spt-runtime manifest::tests::digest_section_source_resolution test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2352089Z PASS [ 0.015s] ( 886/1157) spt-runtime manifest::tests::checked_in_schema_is_current test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2367809Z PASS [ 0.010s] ( 887/1157) spt-runtime manifest::tests::host_binaries_optional_and_n1_safe test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2408218Z PASS [ 0.007s] ( 888/1157) spt-runtime manifest::tests::minimal_header_only_manifest_is_valid test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2410539Z PASS [ 0.007s] ( 889/1157) 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-21T09:49:31.2414398Z PASS [ 0.006s] ( 890/1157) 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-21T09:49:31.2415700Z PASS [ 0.007s] ( 891/1157) spt-runtime manifest::tests::profile_overlays_hints_wholesale test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2426995Z PASS [ 0.008s] ( 892/1157) spt-runtime manifest::tests::round_trips_through_toml test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2435705Z PASS [ 0.010s] ( 893/1157) spt-runtime manifest::tests::message_idle_translation_binary_opt_in test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2445167Z PASS [ 0.008s] ( 894/1157) spt-runtime manifest::tests::shell_fixture_parses test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2456686Z PASS [ 0.022s] ( 895/1157) spt-runtime manifest::tests::hint_keyword_matching test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2465701Z PASS [ 0.013s] ( 896/1157) spt-runtime manifest::tests::manifest_schema_shape test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2472069Z PASS [ 0.006s] ( 897/1157) 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-21T09:49:31.2474544Z PASS [ 0.007s] ( 898/1157) 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-21T09:49:31.2496160Z PASS [ 0.006s] ( 899/1157) 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-21T09:49:31.2498373Z PASS [ 0.008s] ( 900/1157) spt-runtime manifest::tests::shell_tunnel_opt_in test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2506314Z PASS [ 0.007s] ( 901/1157) spt-runtime manifest::tests::update_avenue_content_signing_fields test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2514797Z PASS [ 0.009s] ( 902/1157) spt-runtime manifest::tests::shortcut_basename_optional_with_default test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2520214Z PASS [ 0.006s] ( 903/1157) spt-runtime profile::tests::deep_nested_leaf_replace test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2524627Z PASS [ 0.008s] ( 904/1157) spt-runtime manifest::tests::update_avenue_gh_release_fields test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2533402Z PASS [ 0.007s] ( 905/1157) 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-21T09:49:31.2550768Z PASS [ 0.006s] ( 906/1157) spt-runtime profile::tests::profile_overlays_strings test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2551627Z PASS [ 0.007s] ( 907/1157) spt-runtime profile::tests::leaf_replace_contract test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2560563Z PASS [ 0.007s] ( 908/1157) spt-runtime profile::tests::resolve_unknown_profile_errors test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2564492Z PASS [ 0.006s] ( 909/1157) spt-runtime profile::tests::split_option_first_colon test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2566810Z PASS [ 0.007s] ( 910/1157) spt-runtime profile::tests::resolve_shipped_profile_applies_overlay test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2567889Z PASS [ 0.006s] ( 911/1157) spt-runtime profile::tests::string_dot_path_read_write test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2584403Z PASS [ 0.046s] ( 912/1157) spt-proto identity::tests::sign_verify_round_trip test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2595097Z PASS [ 0.007s] ( 913/1157) spt-runtime profile::tests::tighten_only_refuses_loosened_over_cap test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2608355Z PASS [ 0.007s] ( 914/1157) spt-runtime profile::tests::tighten_only_allows_tightening test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2609571Z PASS [ 0.007s] ( 915/1157) spt-runtime profile::tests::tighten_only_refuses_loosened_require_approval test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2630982Z PASS [ 0.008s] ( 916/1157) spt-runtime registry::tests::create_local_profile_guards test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2632350Z PASS [ 0.006s] ( 917/1157) spt-runtime registry::tests::invalid_manifest_records_nothing test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2637309Z PASS [ 0.009s] ( 918/1157) 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-21T09:49:31.2656718Z PASS [ 0.009s] ( 919/1157) spt-runtime registry::tests::file_backed_string_reads_contents_lazily test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2657844Z PASS [ 0.009s] ( 920/1157) spt-runtime registry::tests::delete_local_profile_rules test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2658880Z PASS [ 0.010s] ( 921/1157) spt-runtime registry::tests::deregister_is_soft_and_readd_reactivates test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2670323Z PASS [ 0.007s] ( 922/1157) 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-21T09:49:31.2675515Z PASS [ 0.008s] ( 923/1157) 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-21T09:49:31.2677605Z PASS [ 0.008s] ( 924/1157) spt-runtime registry::tests::local_profile_survives_readd test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2686243Z PASS [ 0.010s] ( 925/1157) 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-21T09:49:31.2711704Z PASS [ 0.009s] ( 926/1157) spt-runtime registry::tests::register_copy_vs_pointer_by_avenue test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2721790Z PASS [ 0.009s] ( 927/1157) spt-runtime registry::tests::resolve_option_bare_shipped_and_local test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2722713Z PASS [ 0.008s] ( 928/1157) spt-runtime registry::tests::resolve_option_in_matches_disk test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2729810Z PASS [ 0.005s] ( 929/1157) 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-21T09:49:31.2739092Z PASS [ 0.007s] ( 930/1157) 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-21T09:49:31.2741600Z PASS [ 0.007s] ( 931/1157) spt-runtime resolve::tests::pointer_is_sibling_to_adapter_dirs test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2748921Z PASS [ 0.009s] ( 932/1157) 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-21T09:49:31.2762826Z PASS [ 0.010s] ( 933/1157) spt-runtime resolve::tests::fallback_picks_freshest_then_name test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2810463Z PASS [ 0.010s] ( 934/1157) spt-runtime resolve::tests::pointer_overrides_fallback test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2811158Z PASS [ 0.013s] ( 935/1157) spt-runtime registry::tests::strings_get_set_through_overlay test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2811667Z PASS [ 0.008s] ( 936/1157) spt-runtime resolve::tests::renamed_in_use_exe_still_resolves test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2812140Z PASS [ 0.006s] ( 937/1157) spt-runtime runtime::tests::fills_known_placeholders test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2813521Z PASS [ 0.009s] ( 938/1157) spt-runtime resolve::tests::set_clear_prune_rules test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2820059Z PASS [ 0.006s] ( 939/1157) spt-runtime runtime::tests::literal_braces_still_escape_per_token test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2823657Z PASS [ 0.009s] ( 940/1157) spt-runtime resolve::tests::stale_pointer_self_heals_to_fallback test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2825290Z PASS [ 0.010s] ( 941/1157) spt-runtime resolve::tests::single_candidate_resolves_base_no_pointer test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2847369Z PASS [ 0.006s] ( 942/1157) spt-runtime runtime::tests::missing_key_errors_before_spawn test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2848507Z PASS [ 0.006s] ( 943/1157) 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-21T09:49:31.2849568Z PASS [ 0.005s] ( 944/1157) spt-runtime runtime::tests::multiword_value_is_one_argv_element test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2855962Z PASS [ 0.005s] ( 945/1157) 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-21T09:49:31.2868088Z PASS [ 0.005s] ( 946/1157) 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-21T09:49:31.2870097Z PASS [ 0.005s] ( 947/1157) spt-runtime runtime::tests::resolve_program_falls_back_to_path test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2872993Z PASS [ 0.005s] ( 948/1157) spt-runtime runtime::tests::resolve_program_prefers_install_dir test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2885492Z PASS [ 0.006s] ( 949/1157) spt-runtime runtime::tests::spawn_session_detached_returns_pid test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2914439Z PASS [ 0.007s] ( 950/1157) spt-runtime runtime::tests::unknown_role_errors test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2922494Z PASS [ 0.008s] ( 951/1157) spt-runtime runtime::tests::tokenize_honors_double_quotes test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2925341Z PASS [ 0.007s] ( 952/1157) spt-store access::tests::recent_outbound_correlates_within_window test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2929760Z PASS [ 0.008s] ( 953/1157) spt-store access::tests::allow_revoke_open_polarity test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2937679Z PASS [ 0.005s] ( 954/1157) spt-store access::tests::users_reservation_decodes_inert test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2938612Z PASS [ 0.007s] ( 955/1157) spt-store access::tests::recent_outbound_persists test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2939519Z PASS [ 0.007s] ( 956/1157) spt-store access::tests::store_persists_and_degrades_open test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2970856Z PASS [ 0.004s] ( 957/1157) spt-store atomic::tests::retry_absorbs_transient_then_succeeds test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2975304Z PASS [ 0.006s] ( 958/1157) spt-store atomic::tests::atomic_write_bytes_round_trips test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2978675Z PASS [ 0.004s] ( 959/1157) spt-store atomic::tests::retry_gives_up_after_max_attempts test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2980778Z PASS [ 0.006s] ( 960/1157) spt-store atomic::tests::atomic_write_creates_and_replaces test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2981893Z PASS [ 0.005s] ( 961/1157) spt-store atomic::tests::retry_does_not_retry_non_transient test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2986368Z PASS [ 0.012s] ( 962/1157) spt-store access::tests::recent_outbound_is_bounded test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2988678Z PASS [ 0.005s] ( 963/1157) spt-store atomic::tests::to_forward_slash_strips_unc_prefix test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.2991075Z PASS [ 0.005s] ( 964/1157) spt-store attachment::tests::attached_default_flip_roundtrip test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.3008294Z PASS [ 0.027s] ( 965/1157) spt-runtime runtime::tests::bounded_run_captures_success test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.3031047Z PASS [ 0.005s] ( 966/1157) spt-store attachment::tests::corrupt_file_degrades_to_attached test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.3031887Z PASS [ 0.006s] ( 967/1157) spt-store attachment::tests::boot_reset_and_serving_filter test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.3081272Z PASS [ 0.005s] ( 968/1157) spt-store contextmark::tests::join_bump_dominates_both_parents test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.3082140Z PASS [ 0.005s] ( 969/1157) spt-store contextmark::tests::marker_round_trips_v1_and_v2 test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.3121298Z PASS [ 0.004s] ( 970/1157) spt-store contextmark::tests::merge_decisions test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.3123517Z PASS [ 0.004s] ( 971/1157) spt-store contextmark::tests::vector_compare_covers_all_orders test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.3164388Z PASS [ 0.004s] ( 972/1157) spt-store contextmark::tests::vector_parse_tolerant test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.3574770Z PASS [ 0.058s] ( 973/1157) spt-store branchstore::tests::open_or_init_idempotent test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.3891450Z PASS [ 0.090s] ( 974/1157) spt-store branchstore::tests::sweep_removes_only_stale_empty_locks test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.3937240Z PASS [ 0.036s] ( 975/1157) spt-store contextstore::tests::invalid_id_refused test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.4500200Z PASS [ 0.152s] ( 976/1157) spt-store branchstore::tests::branches_are_independent_roots test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.4509320Z PASS [ 0.152s] ( 977/1157) spt-store branchstore::tests::multi_key_commit_is_one_commit test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.4610517Z PASS [ 0.163s] ( 978/1157) spt-store branchstore::tests::commit_then_read_at_tip test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.4631480Z PASS [ 0.162s] ( 979/1157) spt-store branchstore::tests::unchanged_write_is_no_commit test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.4653956Z PASS [ 0.004s] ( 980/1157) spt-store epoch::tests::corrupt_or_absent_file_degrades_safely test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.4673649Z PASS [ 0.004s] ( 981/1157) spt-store epoch::tests::counter_persists_across_reload test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.4696683Z PASS [ 0.004s] ( 982/1157) spt-store epoch::tests::next_is_strictly_increasing_from_one test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.4717087Z PASS [ 0.004s] ( 983/1157) spt-store gitrun::tests::deadline_kills_and_reports_timed_out test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.4756954Z PASS [ 0.004s] ( 984/1157) spt-store grants::tests::grant_match_is_exact_per_tuple test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.4797772Z PASS [ 0.004s] ( 985/1157) spt-store grants::tests::grant_revoke_roundtrip_default_deny test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.4840116Z PASS [ 0.014s] ( 986/1157) spt-store gitrun::tests::version_runs_within_budget test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.4843985Z PASS [ 0.005s] ( 987/1157) spt-store grants::tests::persistence_and_corrupt_degrade_to_deny test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.4882492Z PASS [ 0.004s] ( 988/1157) spt-store history::tests::appends_one_record_per_line test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.4890310Z PASS [ 0.004s] ( 989/1157) spt-store history::tests::context_entries_carry_the_discriminator test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.4924717Z PASS [ 0.004s] ( 990/1157) 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-21T09:49:31.4942705Z PASS [ 0.005s] ( 991/1157) 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-21T09:49:31.4976392Z PASS [ 0.005s] ( 992/1157) spt-store home::tests::home_assignment_matrix test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.4987783Z PASS [ 0.004s] ( 993/1157) spt-store home::tests::scope_seeding_never_clobbers_user_policy test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.5026948Z PASS [ 0.004s] ( 994/1157) 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-21T09:49:31.5029231Z PASS [ 0.005s] ( 995/1157) 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-21T09:49:31.5069279Z PASS [ 0.004s] ( 996/1157) 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-21T09:49:31.5114471Z PASS [ 0.004s] ( 997/1157) spt-store info::tests::controllable_is_additive_and_round_trips test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.5158255Z PASS [ 0.004s] ( 998/1157) spt-store info::tests::corrupt_content_returns_none test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.5387900Z PASS [ 2.096s] ( 999/1157) spt-daemon::seedproofx no_shared_subnet_is_dropped test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.5407433Z PASS [ 0.152s] (1000/1157) spt-store contextstore::tests::project_branch_holds_many_agents test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.5416582Z PASS [ 0.039s] (1001/1157) spt-store info::tests::concurrent_read_during_writes_never_torn test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.5448214Z PASS [ 0.006s] (1002/1157) 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-21T09:49:31.5453891Z PASS [ 0.005s] (1003/1157) spt-store info::tests::read_pid_tolerates_schema_minimal test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.5466857Z PASS [ 0.005s] (1004/1157) spt-store info::tests::set_driven_by_stamps_and_clears test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.5496932Z PASS [ 0.005s] (1005/1157) spt-store info::tests::set_last_active_stamps_recency test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.5503405Z PASS [ 0.005s] (1006/1157) 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-21T09:49:31.5535868Z PASS [ 0.005s] (1007/1157) 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-21T09:49:31.5543736Z PASS [ 0.005s] (1008/1157) spt-store info::tests::set_status_marks_existing_record test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.5545964Z PASS [ 0.004s] (1009/1157) spt-store info::tests::write_read_round_trip test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.5564705Z PASS [ 0.004s] (1010/1157) spt-store liveness::tests::busy_and_missing_keep_interim_parity test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.5590521Z PASS [ 0.005s] (1011/1157) spt-store liveness::tests::daemon_hosted_offline_overrides_live_pid test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.5593274Z PASS [ 0.005s] (1012/1157) spt-store liveness::tests::daemon_hosted_online_survives_dead_pid test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.5611646Z PASS [ 0.005s] (1013/1157) spt-store liveness::tests::external_perch_still_pid_probes test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.5636126Z PASS [ 0.004s] (1014/1157) spt-store nodeid::tests::corrupt_key_errors_never_regenerates test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.5645694Z PASS [ 0.005s] (1015/1157) 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-21T09:49:31.5660280Z PASS [ 0.005s] (1016/1157) spt-store nodeid::tests::create_then_load_is_stable test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.5689590Z PASS [ 0.005s] (1017/1157) spt-store nodeid::tests::seed_hex_round_trips test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.5817327Z PASS [ 0.307s] (1018/1157) spt-runtime runtime::tests::bounded_run_kills_on_timeout test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.5985145Z PASS [ 0.286s] (1019/1157) spt-store contextstore::tests::conflict_artifacts_preserve_both_versions test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.5994513Z PASS [ 2.123s] (1020/1157) spt-daemon::seedproofx wrong_seed_is_dropped test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.6028248Z PASS [ 0.004s] (1021/1157) 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-21T09:49:31.6151594Z PASS [ 2.219s] (1022/1157) spt-daemon::reseed revoked_node_is_denied_and_never_reseeded test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.6196154Z PASS [ 0.004s] (1023/1157) spt-store peeraddrs::tests::corrupt_file_degrades_to_empty test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.6247393Z PASS [ 0.005s] (1024/1157) spt-store peeraddrs::tests::put_get_roundtrip_and_noop_reput test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.6260853Z PASS [ 0.110s] (1025/1157) 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-21T09:49:31.6291019Z PASS [ 0.004s] (1026/1157) 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-21T09:49:31.6300198Z PASS [ 0.004s] (1027/1157) spt-store perch::tests::child_files_route_through_one_resolver test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.6333308Z PASS [ 0.004s] (1028/1157) spt-store perch::tests::classification_matrix test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.6340359Z PASS [ 0.004s] (1029/1157) spt-store perch::tests::explicit_parent_wins_over_infer test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.6381244Z PASS [ 0.004s] (1030/1157) 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-21T09:49:31.6389593Z PASS [ 0.006s] (1031/1157) 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-21T09:49:31.6423896Z PASS [ 0.004s] (1032/1157) spt-store perch::tests::resolve_self_is_flat test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.6434155Z PASS [ 0.004s] (1033/1157) 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-21T09:49:31.6465270Z PASS [ 0.004s] (1034/1157) 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-21T09:49:31.6473242Z PASS [ 0.004s] (1035/1157) spt-store proc::tests::current_process_is_alive test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.6504319Z PASS [ 0.004s] (1036/1157) spt-store proc::tests::exe_basename_dead_pid_is_none test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.6512345Z PASS [ 0.004s] (1037/1157) spt-store proc::tests::exe_basename_resolves_current_process test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.6544087Z PASS [ 0.004s] (1038/1157) spt-store proc::tests::parent_pid_resolves_and_is_alive test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.6551538Z PASS [ 0.004s] (1039/1157) 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-21T09:49:31.6575401Z PASS [ 0.093s] (1040/1157) spt-store notif::tests::listing_is_subnet_scoped test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.6591418Z PASS [ 0.004s] (1041/1157) spt-store proc::tests::unassigned_pid_is_dead test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.6611209Z PASS [ 0.092s] (1042/1157) spt-store notif::tests::produce_list_dismiss_round_trip test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.6654027Z PASS [ 0.004s] (1043/1157) spt-store project::tests::url_spellings_normalize_to_one_id test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.6807348Z PASS [ 0.078s] (1044/1157) spt-store notif::tests::stale_undismissed_copy_cannot_undismiss test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.6821845Z PASS [ 0.025s] (1045/1157) spt-store proc::tests::zombie_child_reads_dead test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.6966079Z PASS [ 0.246s] (1046/1157) spt-store contextstore::tests::two_tier_layout_and_commits test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.7003545Z PASS [ 0.119s] (1047/1157) 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-21T09:49:31.7109824Z PASS [ 0.111s] (1048/1157) spt-store notif::tests::seen_unions_and_surfaced_maxes test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.7308035Z PASS [ 0.165s] (1049/1157) spt-store notif::tests::merge_is_idempotent_and_commutative test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.7369283Z PASS [ 0.078s] (1050/1157) spt-store project::tests::derivation_ladder test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.7680363Z PASS [ 0.067s] (1051/1157) 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-21T09:49:31.7682972Z PASS [ 0.072s] (1052/1157) spt-store registry::tests::register_and_lookup test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.7730843Z PASS [ 0.005s] (1053/1157) spt-store rename::tests::rename_refusals_leave_owlery_untouched test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.7731705Z PASS [ 0.005s] (1054/1157) spt-store rename::tests::live_nested_child_blocks_rename test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.7773684Z PASS [ 0.004s] (1055/1157) 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-21T09:49:31.7784128Z PASS [ 0.005s] (1056/1157) spt-store rename::tests::rename_ripples_self_and_nested_children test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.7823618Z PASS [ 0.004s] (1057/1157) spt-store roster::tests::merge_is_commutative_and_idempotent test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.7824475Z PASS [ 0.005s] (1058/1157) 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-21T09:49:31.7865005Z PASS [ 0.004s] (1059/1157) spt-store roster::tests::roster_for_projects_one_subnets_slice test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.7867990Z PASS [ 0.004s] (1060/1157) 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-21T09:49:31.7911643Z PASS [ 0.004s] (1061/1157) spt-store roster::tests::tombstone_dominates_suppresses_reinsert_and_clears test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.7915468Z PASS [ 0.005s] (1062/1157) spt-store roster::tests::serde_additive_and_degrades_to_empty test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.7933696Z PASS [ 0.056s] (1063/1157) 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-21T09:49:31.7949409Z PASS [ 0.004s] (1064/1157) spt-store roster::tests::tombstones_are_scoped_and_merge test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.7955518Z PASS [ 0.004s] (1065/1157) spt-store roster::tests::upsert_self_overwrites_unconditionally test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.7974389Z PASS [ 0.004s] (1066/1157) spt-store rotation::tests::coalesce_is_per_subnet test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.7987470Z PASS [ 0.004s] (1067/1157) 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-21T09:49:31.8003860Z PASS [ 0.005s] (1068/1157) 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-21T09:49:31.8018424Z PASS [ 0.004s] (1069/1157) spt-store rotation::tests::persists_and_degrades_to_empty test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.8027937Z PASS [ 0.004s] (1070/1157) spt-store seed::tests::absent_cwd_is_omitted test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.8044974Z PASS [ 0.004s] (1071/1157) spt-store seed::tests::seed_round_trips_through_json test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.8045972Z PASS [ 0.139s] (1072/1157) 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-21T09:49:31.8070274Z PASS [ 0.005s] (1073/1157) spt-store sessions::tests::appends_and_reads_in_order test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.8085784Z PASS [ 0.004s] (1074/1157) 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-21T09:49:31.8095891Z PASS [ 0.005s] (1075/1157) 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-21T09:49:31.8114363Z PASS [ 0.004s] (1076/1157) 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-21T09:49:31.8133543Z PASS [ 0.005s] (1077/1157) spt-store sessions::tests::same_session_rebind_is_deduped test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.8137039Z PASS [ 0.004s] (1078/1157) spt-store sessions::tests::tolerant_of_garbage_lines test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.8170246Z PASS [ 0.005s] (1079/1157) spt-store shellinfo::tests::alias_unique_rename_and_resolution test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.8188231Z PASS [ 0.005s] (1080/1157) 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-21T09:49:31.8188917Z PASS [ 0.005s] (1081/1157) spt-store shellinfo::tests::mint_smallest_free_and_teardown_frees test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.8208536Z PASS [ 0.110s] (1082/1157) spt-store registry::tests::reregister_replaces_address test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.8211670Z PASS [ 0.140s] (1083/1157) spt-store registry::tests::clean_removes_dead_keeps_live test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.8223198Z PASS [ 0.005s] (1084/1157) spt-store shellinfo::tests::shellinfo_roundtrip_and_corrupt_tolerance test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.8291345Z PASS [ 0.026s] (1085/1157) spt-store sessions::tests::last_k_and_bounding test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.8328376Z PASS [ 0.516s] (1086/1157) spt-store contextstore::tests::fork_copies_both_tiers_then_diverges test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.8669994Z PASS [ 0.136s] (1087/1157) spt-store registry::tests::resolve_cleans_before_lookup test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.8802853Z LEAK [ 0.226s] (1088/1157) 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-21T09:49:31.8844908Z PASS [ 0.004s] (1089/1157) spt-store subnet::tests::add_joined_preserves_seed_and_epoch test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.8885939Z PASS [ 0.004s] (1090/1157) 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-21T09:49:31.8928170Z PASS [ 0.004s] (1091/1157) 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-21T09:49:31.8929637Z PASS [ 0.443s] (1092/1157) spt-store contextstore::tests::rename_ripples_both_tiers test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.8967601Z PASS [ 0.004s] (1093/1157) 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-21T09:49:31.8974378Z PASS [ 0.004s] (1094/1157) 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-21T09:49:31.8983030Z PASS [ 0.069s] (1095/1157) spt-store spool::tests::spool_touches_has_messages_sentinel test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.9011708Z PASS [ 0.004s] (1096/1157) spt-store subnet::tests::minted_seeds_are_random test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.9014686Z PASS [ 0.004s] (1097/1157) 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-21T09:49:31.9021558Z PASS [ 0.004s] (1098/1157) spt-store subnet::tests::no_prior_generation_before_rotation test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.9051365Z PASS [ 0.004s] (1099/1157) spt-store subnet::tests::remove_drops_membership test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.9053915Z PASS [ 0.004s] (1100/1157) spt-store subnet::tests::rotate_bumps_epoch_and_changes_seed test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.9065485Z PASS [ 0.004s] (1101/1157) spt-store subnet::tests::store_persists_multi_subnet_and_rotation test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.9151634Z PASS [ 0.082s] (1102/1157) 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-21T09:49:31.9271129Z PASS [ 0.105s] (1103/1157) spt-store spool::tests::reopen_is_idempotent test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.9635211Z PASS [ 0.036s] (1104/1157) spt-store syncmerge::tests::non_context_branch_refused test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.9675207Z PASS [ 0.149s] (1105/1157) spt-store spool::tests::drain_marks_delivered_and_is_idempotent test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.9847582Z PASS [ 0.118s] (1106/1157) 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-21T09:49:31.9888101Z PASS [ 0.004s] (1107/1157) spt-store timefmt::tests::formats_known_instants test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.9927959Z PASS [ 0.004s] (1108/1157) spt-store timefmt::tests::lexical_order_matches_chronological_order test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.9934836Z PASS [ 0.175s] (1109/1157) 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-21T09:49:31.9975525Z PASS [ 0.004s] (1110/1157) spt-store visibility::tests::hidden_is_or_of_defaults test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:31.9976506Z PASS [ 0.005s] (1111/1157) spt-store visibility::tests::hidden_gates_sync_even_when_listed test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:32.0014103Z PASS [ 0.004s] (1112/1157) spt-store visibility::tests::override_wins_both_directions test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:32.0016908Z PASS [ 0.004s] (1113/1157) spt-store visibility::tests::store_persists_and_degrades_safe test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:32.0041964Z PASS [ 0.183s] (1114/1157) 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-21T09:49:32.0055620Z PASS [ 0.004s] (1115/1157) spt-store visibility::tests::synced_requires_membership_listing test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:32.0062006Z PASS [ 0.004s] (1116/1157) 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-21T09:49:32.0091425Z PASS [ 0.005s] (1117/1157) 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-21T09:49:32.0092083Z PASS [ 0.004s] (1118/1157) spt-term digest::tests::config_defaults_are_the_presentation_formula test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:32.0101508Z PASS [ 0.004s] (1119/1157) 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-21T09:49:32.0132488Z PASS [ 0.004s] (1120/1157) spt-term projection::tests::agent_between_tools_breaks_the_sprint test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:32.0133646Z PASS [ 0.004s] (1121/1157) spt-term projection::tests::context_record_discriminator test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:32.0140453Z PASS [ 0.004s] (1122/1157) spt-term projection::tests::diagnostics_clean_stream_has_no_drops test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:32.0155430Z PASS [ 0.622s] (1123/1157) spt-store contextstore::tests::remove_endpoint_removes_exactly_the_source test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:32.0176980Z PASS [ 0.004s] (1124/1157) spt-term projection::tests::empty_input_projects_empty_digest test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:32.0178340Z PASS [ 0.004s] (1125/1157) spt-term projection::tests::diagnostics_record_every_drop_with_reason test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:32.0184195Z PASS [ 0.004s] (1126/1157) 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-21T09:49:32.0200037Z PASS [ 0.004s] (1127/1157) 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-21T09:49:32.0223728Z PASS [ 0.004s] (1128/1157) spt-term projection::tests::timeline_boundary_divider_and_window_bridge test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:32.0225263Z PASS [ 0.005s] (1129/1157) spt-term projection::tests::sprint_collapse_off_keeps_tools_separate test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:32.0229555Z PASS [ 0.005s] (1130/1157) 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-21T09:49:32.0242273Z PASS [ 0.004s] (1131/1157) spt-term projection::tests::timeline_folds_context_into_a_turn test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:32.0270899Z PASS [ 0.004s] (1132/1157) 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-21T09:49:32.0272276Z PASS [ 0.005s] (1133/1157) spt-term projection::tests::truncates_tool_args_to_width test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:32.0273137Z PASS [ 0.004s] (1134/1157) spt-term projection::tests::unknown_fields_are_tolerated test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:32.0283330Z PASS [ 0.004s] (1135/1157) spt-term projection::tests::window_input_turns_bridges_and_trims test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:32.0311056Z PASS [ 0.004s] (1136/1157) 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-21T09:49:32.0311953Z PASS [ 0.004s] (1137/1157) spt-term reader::tests::auto_answers_synthetic_dsr_query test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:32.0318573Z PASS [ 0.005s] (1138/1157) spt-term projection::tests::windows_to_last_n_turns test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:32.0352876Z PASS [ 0.004s] (1139/1157) 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-21T09:49:32.0353914Z PASS [ 0.004s] (1140/1157) 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-21T09:49:32.0359714Z PASS [ 0.004s] (1141/1157) spt-term winprog::tests::earlier_path_dir_wins test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:32.0378849Z PASS [ 0.010s] (1142/1157) spt-term reader::tests::no_dsr_means_no_answer test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:32.0391313Z PASS [ 0.004s] (1143/1157) spt-term winprog::tests::unresolvable_passes_through test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:32.0392719Z PASS [ 0.004s] (1144/1157) spt-term winprog::tests::explicit_extension_is_classified_in_place test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:32.0397526Z PASS [ 0.004s] (1145/1157) 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-21T09:49:32.1502625Z PASS [ 0.329s] (1146/1157) spt-store spool::tests::event_part_body_persists_byte_exact test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:32.1688249Z PASS [ 0.486s] (1147/1157) spt-store registry::tests::concurrent_registration_never_locks test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:32.4091899Z PASS [ 0.494s] (1148/1157) spt-store syncmerge::tests::legacy_bottom_vectors_surface_not_overwrite test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:32.4605746Z PASS [ 0.555s] (1149/1157) spt-store syncmerge::tests::adopt_then_incremental_then_idempotent_repull test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:32.5743871Z PASS [ 0.611s] (1150/1157) spt-store syncmerge::tests::project_branch_unions_disjoint_agents test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:32.6443449Z PASS [ 1.346s] (1151/1157) spt-store branchstore::tests::branches_by_recency_orders_newest_first test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:32.9817549Z PASS [ 1.075s] (1152/1157) spt-store syncmerge::tests::dominated_incoming_drops_but_joins_dag test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:33.2257388Z PASS [ 1.320s] (1153/1157) spt-store syncmerge::tests::concurrent_writes_surface_on_both_nodes test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:34.3125620Z PASS [ 2.345s] (1154/1157) spt-store syncmerge::tests::reconciled_write_propagates_and_clears_artifacts test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:35.0425689Z PASS [ 5.692s] (1155/1157) 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-21T09:49:38.1347916Z PASS [ 10.508s] (1156/1157) 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-21T09:49:42.6471919Z PASS [ 15.105s] (1157/1157) 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-21T09:49:42.6472819Z ──────────── test (self-hosted, Linux, kitsubito) Test — Phase A (light pool, full parallel) 2026-06-21T09:49:42.6473073Z Summary [ 16.093s] 1157 tests run: 1157 passed (2 leaky), 1 skipped test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:49:42.6631254Z ##[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, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:49:42.6636240Z 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, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:49:42.6806759Z shell: /usr/bin/bash -e {0} test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:49:42.6807007Z env: test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:49:42.6807198Z SPT_REGISTRY_BUSY_TIMEOUT_MS: 30000 test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:49:42.6807445Z RUSTFLAGS: -C link-arg=-fuse-ld=mold test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:49:42.6807665Z ##[endgroup] test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:49:43.7909562Z Finished `test` profile [unoptimized + debuginfo] target(s) in 0.42s test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:49:43.9043627Z ──────────── test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:49:43.9044061Z Nextest run ID 774621bb-a29a-4bf2-8a0d-e216cc6eec53 with nextest profile: default test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:49:58.5570563Z Starting 90 tests across 39 binaries (48 binaries skipped) test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:49:58.5571317Z PASS [ 14.652s] ( 1/90) spt::attach_wedge_e2e attach_wedge_dead_child_plus_dropped_pump_does_not_wedge_the_broker test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:50:08.3777633Z PASS [ 9.821s] ( 2/90) spt::bind_cwd_project_e2e endpoint_run_records_cwd_and_appears_under_its_project test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:50:49.9349748Z PASS [ 41.557s] ( 3/90) spt::brain_respawn_rename brain_respawns_onto_applied_bytes_after_in_place_rename test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:51:17.9886932Z PASS [ 28.054s] ( 4/90) spt::brain_restart_psyche_dup_e2e brain_restart_leaves_exactly_one_psyche_per_endpoint test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:51:40.3531782Z PASS [ 22.364s] ( 5/90) spt::brain_split broker_survives_brain_kill_and_respawns_it test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:52:02.8136035Z PASS [ 22.460s] ( 6/90) spt::brain_split seed_anchor_survives_brain_cycle test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:52:40.4511535Z PASS [ 37.637s] ( 7/90) spt::brain_survive pty_and_quic_survive_brain_process_restart_onto_swapped_binary test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:52:55.5784510Z PASS [ 15.127s] ( 8/90) spt::dummy_harness_e2e endpoint_run_attach_awaits_online_before_attaching test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:53:06.1457712Z PASS [ 10.567s] ( 9/90) spt::dummy_harness_e2e endpoint_run_brings_up_a_long_lived_dummy_harness_and_rc_attaches test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:53:06.4288567Z PASS [ 0.283s] (10/90) spt::gateway_owner_shell_e2e gateway_typed_owner_owns_a_shell_on_every_path_keyed_on_id test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:53:06.4327018Z PASS [ 0.004s] (11/90) spt::job_escape_e2e daemon_survives_terminal_close_via_session_detachment test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:53:23.9671363Z PASS [ 17.534s] (12/90) spt::livehost_bootgate_e2e cold_start_does_not_revive_a_sessionless_online_latched_perch test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:53:51.7176038Z PASS [ 27.750s] (13/90) spt::livehost_bootrace_e2e netless_online_live_agent_is_hosted_by_the_real_daemon_brain test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:54:11.4341899Z PASS [ 19.717s] (14/90) spt::livehost_nonresident_e2e online_live_agent_with_fast_exiting_psyche_stamps_parent_and_clears_phantom test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:54:25.7373940Z PASS [ 14.303s] (15/90) spt::livehost_psyche_fail_e2e online_live_agent_with_missing_psyche_binary_stamps_a_harness_reachable_error test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:54:25.7413067Z PASS [ 0.004s] (16/90) spt::n1_pairing new_brain_serves_against_old_broker test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:54:25.7454712Z PASS [ 0.004s] (17/90) spt::oneliner_e2e at_logon_task_launches_daemon_in_background_not_foreground test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:54:25.7487611Z PASS [ 0.003s] (18/90) spt::oneliner_e2e install_script_against_staged_release test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:54:40.5693624Z PASS [ 14.820s] (19/90) spt::resume_template_e2e endpoint_run_resume_selects_resume_template_in_recorded_cwd test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:00.1288062Z PASS [ 19.559s] (20/90) spt::unhost_psyche_reap_e2e endpoint_stop_reaps_the_hosted_psyche_process test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:00.2667992Z PASS [ 0.138s] (21/90) spt-daemon::attach attach_registers_remote_drive_detection test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:00.3385334Z PASS [ 0.072s] (22/90) spt-daemon::attach attach_survives_target_brain_restart_exactly_once test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:00.3682005Z PASS [ 0.030s] (23/90) spt-daemon::attach broker_spawns_the_pty_child_in_the_requested_cwd test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:00.4033000Z PASS [ 0.035s] (24/90) spt-daemon::attach controller_restart_with_viewer_no_displace_and_viewer_survives test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:00.4400852Z PASS [ 0.037s] (25/90) spt-daemon::attach controller_viewer_matrix_and_loud_take test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:00.4490544Z PASS [ 0.009s] (26/90) spt-daemon::attach handoff_seeds_resume_cursor_and_resubscribes_for_resume test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:00.4998045Z PASS [ 0.051s] (27/90) spt-daemon::attach local_attach_via_loopback_conn_rides_the_same_pump test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:00.5374205Z PASS [ 0.038s] (28/90) spt-daemon::attach loopback_attach_to_a_prepopulated_ring_delivers_without_deadlock test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:00.5755913Z PASS [ 0.038s] (29/90) spt-daemon::attach loopback_self_dial_is_refused_local_uses_fallback_transport test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:00.5863826Z PASS [ 0.011s] (30/90) spt-daemon::attach re_serve_resets_resume_cursor_after_a_pre_attached_consume test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:00.6573546Z PASS [ 0.071s] (31/90) spt-daemon::attach remote_attach_drives_a_real_pty_cross_daemon test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:00.7449766Z PASS [ 0.087s] (32/90) spt-daemon::attach resize_is_controller_exclusive test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:00.8045192Z PASS [ 0.059s] (33/90) spt-daemon::attach same_origin_re_subscribe_does_not_displace test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:00.8890820Z PASS [ 0.084s] (34/90) spt-daemon::attach spt_hosted_bringup_then_cross_node_attach_drives_the_pty test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:03.0021812Z FAIL [ 2.112s] (35/90) spt-daemon::attach wedged_viewer_does_not_stall_controller test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:03.0022491Z stdout ─── test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:03.0022637Z test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:03.0022742Z running 1 test test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:03.0023017Z test wedged_viewer_does_not_stall_controller ... FAILED test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:03.0023268Z test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:03.0023406Z failures: test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:03.0023536Z test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:03.0023635Z failures: test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:03.0024103Z wedged_viewer_does_not_stall_controller test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:03.0024355Z test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:03.0024645Z test result: FAILED. 0 passed; 1 failed; 0 ignored; 0 measured; 14 filtered out; finished in 2.10s test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:03.0025004Z test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:03.0025161Z stderr ─── test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:03.0025280Z test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:03.0025560Z thread 'wedged_viewer_does_not_stall_controller' (3571724) panicked at crates/spt-daemon/tests/attach.rs:1071:33: test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:03.0026112Z ctrl event: Custom { kind: InvalidData, error: "output gap: got seq 6825 want 4617" } test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:03.0026559Z note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:03.0026832Z test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:03.0214371Z PASS [ 0.019s] (36/90) spt-daemon::brain_swap brain_only_update_swaps_logic_with_zero_endpoint_interruption test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:03.0312317Z PASS [ 0.010s] (37/90) spt-daemon::broker ack_false_input_suppresses_applied_frame test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:03.0406325Z PASS [ 0.009s] (38/90) spt-daemon::broker broker_hosts_pty_child_streams_output_and_accepts_input test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:03.0510165Z PASS [ 0.010s] (39/90) spt-daemon::broker controller_writer_reorder_consumer_view_stays_monotonic_and_session_live test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:03.0615685Z PASS [ 0.011s] (40/90) spt-daemon::broker dead_session_subscribe_does_not_hang test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:03.0710584Z PASS [ 0.009s] (41/90) spt-daemon::broker endpoint_keyed_inject_reaches_hosted_pty test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:03.1987138Z PASS [ 0.127s] (42/90) spt-daemon::broker exactly_once_preserved_on_no_ack_path test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:03.2084267Z PASS [ 0.010s] (43/90) spt-daemon::broker spawn_env_reaches_child test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:03.2182932Z PASS [ 0.010s] (44/90) spt-daemon::broker wall_b_endpoint_run_env_then_send_reaches_pty test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:03.2222688Z PASS [ 0.004s] (45/90) spt-daemon::budget measure_dormant_seat_budget test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:03.8735818Z PASS [ 0.651s] (46/90) spt-daemon::daemon_e2e daemon_hosts_lifecycle_and_survives_brain_restart test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:16.0200558Z PASS [ 12.146s] (47/90) spt-daemon::daemon_lifecycle_real_brain real_brain_process_hosts_the_psyche_for_an_online_live_endpoint test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:16.1280719Z PASS [ 0.108s] (48/90) spt-daemon::digest harness_hosted_digest_projects_and_pushes_deltas test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:16.1416613Z PASS [ 0.014s] (49/90) spt-daemon::dispatch classify_routes_a_node_label_feed_to_registry test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:16.3089367Z PASS [ 0.167s] (50/90) spt-daemon::dispatch dispatcher_applies_a_notif_feed_undriven test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:16.4472503Z PASS [ 0.138s] (51/90) spt-daemon::dispatch dispatcher_funnels_wan_messages_undriven test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:16.6155162Z PASS [ 0.168s] (52/90) spt-daemon::dispatch dispatcher_serves_a_cross_node_shell_link test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:16.7066317Z PASS [ 0.091s] (53/90) spt-daemon::dispatch dispatcher_serves_a_file_fetch_undriven test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:16.8218163Z PASS [ 0.115s] (54/90) spt-daemon::dispatch dispatcher_serves_a_remote_drive_attach_undriven test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:16.9836055Z PASS [ 0.162s] (55/90) spt-daemon::dispatch dispatcher_serves_a_subnet_serve_probe test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:17.3433064Z PASS [ 0.360s] (56/90) spt-daemon::dispatch dispatcher_serves_a_sync_pull_undriven test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:17.4493777Z PASS [ 0.106s] (57/90) spt-daemon::dispatch dispatcher_serves_an_update_pull_undriven test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:17.6129507Z PASS [ 0.163s] (58/90) spt-daemon::dispatch dispatcher_surfaces_a_remote_won_notif_at_the_winning_node test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:17.7402620Z PASS [ 0.127s] (59/90) spt-daemon::dispatch dispatcher_survives_an_unknown_stream test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:18.0591179Z PASS [ 0.319s] (60/90) spt-daemon::driven_by_selfheal gap_a_live_session_controller_by_is_ambiguous_so_reconcile_must_not_clear test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:18.0653097Z PASS [ 0.006s] (61/90) spt-daemon::driven_by_selfheal gap_b_sessionless_perch_reconcile_offlines_and_clears_driven_by test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:18.0961799Z PASS [ 0.031s] (62/90) spt-daemon::handoff brain_restart_survives_gaplessly_with_fresh_gen_start test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:18.1176670Z PASS [ 0.021s] (63/90) spt-daemon::idempotent pty_writes_are_exactly_once_across_brain_crashes test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:21.1321560Z PASS [ 3.014s] (64/90) spt-daemon::inject_control_wedge a_backed_up_controller_does_not_wedge_the_session test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:40.0758666Z FAIL [ 18.944s] (65/90) spt-daemon::inject_control_wedge a_journaled_input_wedge_does_not_starve_a_concurrent_rc_attach test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:40.0759605Z stdout ─── test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:40.0759747Z test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:40.0759859Z running 1 test test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:40.0760206Z test a_journaled_input_wedge_does_not_starve_a_concurrent_rc_attach ... FAILED test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:40.0760568Z test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:40.0760676Z failures: test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:40.0761185Z test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:40.0761280Z failures: test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:40.0761571Z a_journaled_input_wedge_does_not_starve_a_concurrent_rc_attach test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:40.0761862Z test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:40.0762134Z test result: FAILED. 0 passed; 1 failed; 0 ignored; 0 measured; 9 filtered out; finished in 18.93s test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:40.0762520Z test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:40.0762643Z stderr ─── test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:40.0762867Z PUMP_IPC_READER: spawned test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:40.0763125Z PUMP_IPC_READER: spawned test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:40.0763365Z PUMP_IPC_READER: exited test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:40.0764578Z === W1b JOURNAL-WEDGE GATE: journaled_ops_pumped=11310 concurrent_attach_subscribed=true attach_received_pty_output=false (fixed = both true; pre-fix on Unix: subscribed=false — attach wedged on the held journal lock) === test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:40.0765408Z test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:40.0765859Z thread 'a_journaled_input_wedge_does_not_starve_a_concurrent_rc_attach' (3572529) panicked at crates/spt-daemon/tests/inject_control_wedge.rs:750:5: test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:40.0766797Z the concurrent attach must actually RECEIVE PTY output from the child (not just liveness): no FLOOD bytes rendered over the real attach pump. test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:40.0767508Z note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:40.0767828Z test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:40.3196537Z PASS [ 0.244s] (66/90) spt-daemon::inject_control_wedge g1_choreography_happy_path_payload_reaches_pty_and_controller_keeps_control test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:57.0184066Z FAIL [ 16.699s] (67/90) spt-daemon::inject_control_wedge g2_no_commit_deadline_faults_binary_and_does_not_wedge_controller_input test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:57.0184996Z stdout ─── test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:57.0185142Z test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:57.0185238Z running 1 test test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:57.0185608Z test g2_no_commit_deadline_faults_binary_and_does_not_wedge_controller_input ... FAILED test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:57.0186036Z test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:57.0186189Z failures: test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:57.0186431Z test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:57.0186590Z failures: test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:57.0187009Z g2_no_commit_deadline_faults_binary_and_does_not_wedge_controller_input test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:57.0187276Z test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:57.0187506Z test result: FAILED. 0 passed; 1 failed; 0 ignored; 0 measured; 9 filtered out; finished in 16.69s test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:57.0187813Z test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:57.0187936Z stderr ─── test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:57.0188107Z PUMP_IPC_READER: spawned test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:57.0188451Z ENDPOINT_INJECT:xlate-g2-ep (57 bytes → translation binary) test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:57.0189104Z TRANSLATION_FAULT: no {commit} within INJECT_COMMIT_DEADLINE — terminating binary, reverting to raw inject test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:57.0189547Z PUMP_IPC_READER: spawned test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:57.0189914Z ENDPOINT_INJECT:xlate-g2-ep (35 bytes, idle-direct — activity not yet gated) test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:57.0190243Z PUMP_IPC_READER: spawned test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:57.0191025Z === W2 G2 NO-COMMIT FAULT GATE: delivered=true op_flushed=false sessions_answered=true delivered2=true raw_fallback_reached=false (op_flushed=true → controller input never wedged; raw_fallback → binary faulted) === test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:57.0191659Z test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:57.0192054Z thread 'g2_no_commit_deadline_faults_binary_and_does_not_wedge_controller_input' (3572604) panicked at crates/spt-daemon/tests/inject_control_wedge.rs:1196:5: test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:57.0193195Z after the commit deadline the floor must RELEASE and buffered operator keystrokes must flush to the PTY — the controller's input must NOT wedge (the mandatory bounded-buffer guard; doyle non-negotiable = never park forever) test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:57.0194053Z note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:57.0194382Z PUMP_IPC_READER: exited test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:57.0194527Z test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:57.5550482Z PASS [ 0.536s] (68/90) spt-daemon::inject_control_wedge g3_content_free_ping_never_duplicates_operator_keystrokes_into_binary test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:57.6708185Z PASS [ 0.116s] (69/90) spt-daemon::inject_control_wedge g4_translation_child_is_reaped_no_zombie_after_session_down test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:55:57.9642041Z PASS [ 0.293s] (70/90) spt-daemon::inject_control_wedge injecting_a_large_payload_into_a_stdin_ignoring_child test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:16.8088022Z FAIL [ 18.844s] (71/90) spt-daemon::inject_control_wedge p0_paste_wedge_parked_write_does_not_starve_attach_or_wedge_broker test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:16.8089215Z stdout ─── test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:16.8089416Z test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:16.8089516Z running 1 test test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:16.8089886Z test p0_paste_wedge_parked_write_does_not_starve_attach_or_wedge_broker ... FAILED test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:16.8090613Z test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:16.8090776Z failures: test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:16.8090984Z test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:16.8091123Z failures: test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:16.8091438Z p0_paste_wedge_parked_write_does_not_starve_attach_or_wedge_broker test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:16.8091715Z test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:16.8091992Z test result: FAILED. 0 passed; 1 failed; 0 ignored; 0 measured; 9 filtered out; finished in 18.83s test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:16.8092369Z test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:16.8092506Z stderr ─── test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:16.8092730Z PUMP_IPC_READER: spawned test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:16.8092987Z PUMP_IPC_READER: spawned test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:16.8093265Z PUMP_IPC_READER: spawned test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:16.8093513Z PUMP_IPC_READER: exited test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:16.8096553Z === P0 PASTE-WEDGE GATE: pumped=46085 keystroke_accepted=true concurrent_attach_subscribed=true attach_received_output=false backpressured=true backpressure_after_stop=Some(true) (fixed = subscribed+got_output+keystroke_accepted true; pre-fix: parked dispatch thread → subscribed=false / no output) === test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:16.8097492Z test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:16.8097868Z thread 'p0_paste_wedge_parked_write_does_not_starve_attach_or_wedge_broker' (3572705) panicked at crates/spt-daemon/tests/inject_control_wedge.rs:1996:5: test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:16.8099446Z the concurrent attach must actually RECEIVE PTY output from the flooding child (not just liveness) while the paste write is parked — output delivery does not go through the input writer, so receiving bytes proves the dispatch serviced this attach despite the parked write. test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:16.8100423Z note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:16.8100689Z test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:17.1491929Z PASS [ 0.340s] (72/90) spt-daemon::inject_control_wedge w5_a1_locally_driven_session_reports_controller_by_none test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:21.2019953Z FAIL [ 4.053s] (73/90) spt-daemon::inject_control_wedge w5_a2_abandoned_remote_controller_idle_session_keeps_controller_by_some test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:21.2020821Z stdout ─── test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:21.2020965Z test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:21.2021074Z running 1 test test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:21.2021464Z test w5_a2_abandoned_remote_controller_idle_session_keeps_controller_by_some ... FAILED test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:21.2021822Z test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:21.2021928Z failures: test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:21.2022075Z test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:21.2022176Z failures: test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:21.2022529Z w5_a2_abandoned_remote_controller_idle_session_keeps_controller_by_some test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:21.2022834Z test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:21.2023118Z test result: FAILED. 0 passed; 1 failed; 0 ignored; 0 measured; 9 filtered out; finished in 4.04s test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:21.2023488Z test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:21.2023622Z stderr ─── test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:21.2023846Z PUMP_IPC_READER: spawned test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:21.2024103Z PUMP_IPC_READER: spawned test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:21.2024346Z PUMP_IPC_READER: spawned test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:21.2025491Z === W5 A2 CHARACTERIZATION: subscribed=true driven_after_attach=Some("4d036927156a17ed97545098435f46709ff294a7d5953da5b06df0c53c8e7623") cby_attached=Some(Some("4d036927156a17ed97545098435f46709ff294a7d5953da5b06df0c53c8e7623")) session_still_listed=true cby_after_abandon=Some(None) driven_after_abandon=None === test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:21.2027619Z === W5 A2 VERDICT: controller_by==None sufficient for Gap A? true (false ⇒ wedged slot stays Some(origin) ⇒ the lost-detach fix must be broker-side eviction — a reconcile `controller_by==None` check alone does NOT catch this; it only catches A1 / Gap B) === test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:21.2030189Z test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:21.2030697Z thread 'w5_a2_abandoned_remote_controller_idle_session_keeps_controller_by_some' (3572762) panicked at crates/spt-daemon/tests/inject_control_wedge.rs:1671:9: test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:21.2032526Z A2: an abandoned remote controller on an IDLE session must STILL read controller_by == Some(origin) (the slot does not self-clear without output-drain-evict or a clean EOF) — proving controller_by==None is NOT a sufficient Gap-A signal for the production wedged-pump case; the lost-detach clear must be broker-side eviction. Got: Some(None) test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:21.2033779Z note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:21.2034043Z test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:23.0811816Z PASS [ 1.879s] (74/90) spt-daemon::input_ack_deadlock input_flood_through_serve_attach_does_not_deadlock_broker test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:25.1239138Z PASS [ 2.043s] (75/90) spt-daemon::resume cold_start_resumes_all_sessions_from_the_broker_cursor test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:29.3333926Z PASS [ 4.209s] (76/90) spt-daemon::resume resume_below_ring_floor_clamps_forward_without_gap_error test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:30.1507838Z PASS [ 0.815s] (77/90) spt-daemon::resume resume_mode_brain_spawning_new_sessions_delivers_each test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:30.2226538Z PASS [ 0.072s] (78/90) spt-daemon::shellchan hung_shell_stalls_no_other_owner test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:30.3229843Z PASS [ 0.100s] (79/90) spt-daemon::shellchan stdin_receipt_delivers_spooled_frames_exactly_once test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:30.3978326Z PASS [ 0.075s] (80/90) spt-daemon::two_origin_spanning one_source_two_consumers_spans_and_merges test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:30.4044435Z PASS [ 0.007s] (81/90) spt-daemon::twohost two_host_ladder_role_a test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:30.4100690Z PASS [ 0.006s] (82/90) spt-daemon::twohost two_host_ladder_role_b test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:30.4249152Z PASS [ 0.015s] (83/90) spt-term::dsr drain_forwards_child_output test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:30.4502117Z PASS [ 0.025s] (84/90) spt-term::inject ctrl_c_interrupts_the_child test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:30.4655860Z PASS [ 0.015s] (85/90) spt-term::inject send_line_reaches_child_and_preserves_order test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:31.4718102Z PASS [ 1.006s] (86/90) spt-term::stream bounded_backpressure_stalls_an_unconsumed_reader test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:31.4770513Z PASS [ 0.005s] (87/90) spt-term::stream delivers_every_value_under_resize test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:31.4911733Z PASS [ 0.014s] (88/90) spt-term::surface captures_child_output_off_the_pty test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:31.4961882Z PASS [ 0.005s] (89/90) spt-term::surface resize_under_load_does_not_hang_or_panic test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:31.5010849Z PASS [ 0.005s] (90/90) spt-term::surface spawn_program_in_lands_the_child_in_the_requested_cwd test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:31.5012096Z ──────────── test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:31.5012530Z Summary [ 407.597s] 90 tests run: 85 passed, 5 failed, 0 skipped test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:31.5013050Z FAIL [ 2.112s] (35/90) spt-daemon::attach wedged_viewer_does_not_stall_controller test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:31.5013829Z FAIL [ 18.944s] (65/90) spt-daemon::inject_control_wedge a_journaled_input_wedge_does_not_starve_a_concurrent_rc_attach test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:31.5014648Z FAIL [ 16.699s] (67/90) spt-daemon::inject_control_wedge g2_no_commit_deadline_faults_binary_and_does_not_wedge_controller_input test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:31.5015425Z FAIL [ 18.844s] (71/90) spt-daemon::inject_control_wedge p0_paste_wedge_parked_write_does_not_starve_attach_or_wedge_broker test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:31.5016234Z FAIL [ 4.053s] (73/90) spt-daemon::inject_control_wedge w5_a2_abandoned_remote_controller_idle_session_keeps_controller_by_some test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:31.5040036Z error: test run failed test (self-hosted, Linux, kitsubito) Test — Phase B (heavy class, serialized, on a now-quiet box) 2026-06-21T09:56:31.5068814Z ##[error]Process completed with exit code 100. test (self-hosted, Linux, kitsubito) Post Run actions/checkout@v5 2026-06-21T09:56:31.5237560Z Post job cleanup. test (self-hosted, Linux, kitsubito) Post Run actions/checkout@v5 2026-06-21T09:56:31.6850501Z [command]/usr/bin/git version test (self-hosted, Linux, kitsubito) Post Run actions/checkout@v5 2026-06-21T09:56:31.6884719Z git version 2.43.0 test (self-hosted, Linux, kitsubito) Post Run actions/checkout@v5 2026-06-21T09:56:31.6916247Z Temporarily overriding HOME='/home/reavus/actions-runner/_work/_temp/018598f6-a980-47da-a7a5-66d4b8e6fdc8' before making global git config changes test (self-hosted, Linux, kitsubito) Post Run actions/checkout@v5 2026-06-21T09:56:31.6917293Z 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-21T09:56:31.6919983Z [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-21T09:56:31.6953771Z [command]/usr/bin/git config --local --name-only --get-regexp core\.sshCommand test (self-hosted, Linux, kitsubito) Post Run actions/checkout@v5 2026-06-21T09:56:31.6984723Z [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-21T09:56:31.7192886Z [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-21T09:56:31.7214173Z http.https://github.com/.extraheader test (self-hosted, Linux, kitsubito) Post Run actions/checkout@v5 2026-06-21T09:56:31.7221704Z [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-21T09:56:31.7249713Z [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-21T09:56:31.7440429Z [command]/usr/bin/git config --local --name-only --get-regexp ^includeIf\.gitdir: test (self-hosted, Linux, kitsubito) Post Run actions/checkout@v5 2026-06-21T09:56:31.7467346Z [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-21T09:56:31.7788881Z Cleaning up orphan processes test (self-hosted, Linux, kitsubito) Complete job 2026-06-21T09:56:31.8456202Z Terminate orphan process: pid (3561576) (spt) test (self-hosted, Linux, kitsubito) Complete job 2026-06-21T09:56:31.8475643Z Terminate orphan process: pid (3561605) (spt)