﻿2026-06-02T10:47:19.5130691Z Current runner version: '2.334.0'
2026-06-02T10:47:19.5188970Z ##[group]Runner Image Provisioner
2026-06-02T10:47:19.5190294Z Hosted Compute Agent
2026-06-02T10:47:19.5191293Z Version: 20260520.533
2026-06-02T10:47:19.5192353Z Commit: 189110e25284a9812c124fd27b339e2fb4f2f9db
2026-06-02T10:47:19.5193532Z Build Date: 2026-05-20T17:44:04Z
2026-06-02T10:47:19.5194711Z Worker ID: {3a4233e0-d114-48fb-b578-9e9451a45932}
2026-06-02T10:47:19.5195830Z Azure Region: eastus
2026-06-02T10:47:19.5196806Z ##[endgroup]
2026-06-02T10:47:19.5199249Z ##[group]Operating System
2026-06-02T10:47:19.5200850Z Ubuntu
2026-06-02T10:47:19.5201683Z 24.04.4
2026-06-02T10:47:19.5202597Z LTS
2026-06-02T10:47:19.5203445Z ##[endgroup]
2026-06-02T10:47:19.5204333Z ##[group]Runner Image
2026-06-02T10:47:19.5205388Z Image: ubuntu-24.04
2026-06-02T10:47:19.5206286Z Version: 20260525.161.1
2026-06-02T10:47:19.5209158Z Included Software: https://github.com/actions/runner-images/blob/ubuntu24/20260525.161/images/ubuntu/Ubuntu2404-Readme.md
2026-06-02T10:47:19.5211739Z Image Release: https://github.com/actions/runner-images/releases/tag/ubuntu24%2F20260525.161
2026-06-02T10:47:19.5213320Z ##[endgroup]
2026-06-02T10:47:19.5215282Z ##[group]GITHUB_TOKEN Permissions
2026-06-02T10:47:19.5218397Z Contents: read
2026-06-02T10:47:19.5219288Z Metadata: read
2026-06-02T10:47:19.5220381Z Packages: read
2026-06-02T10:47:19.5221247Z ##[endgroup]
2026-06-02T10:47:19.5224326Z Secret source: Actions
2026-06-02T10:47:19.5225816Z Prepare workflow directory
2026-06-02T10:47:19.5895357Z Prepare all required actions
2026-06-02T10:47:19.5950613Z Getting action download info
2026-06-02T10:47:19.9993989Z Download action repository 'actions/checkout@v4' (SHA:34e114876b0b11c390a56381ad16ebd13914f8d5)
2026-06-02T10:47:20.2548197Z Complete job name: traceability
2026-06-02T10:47:20.3395556Z ##[group]Run actions/checkout@v4
2026-06-02T10:47:20.3396492Z with:
2026-06-02T10:47:20.3396990Z   repository: SaberMage/spt-core
2026-06-02T10:47:20.3402545Z   token: ***
2026-06-02T10:47:20.3403067Z   ssh-strict: true
2026-06-02T10:47:20.3403565Z   ssh-user: git
2026-06-02T10:47:20.3404079Z   persist-credentials: true
2026-06-02T10:47:20.3404631Z   clean: true
2026-06-02T10:47:20.3405133Z   sparse-checkout-cone-mode: true
2026-06-02T10:47:20.3405734Z   fetch-depth: 1
2026-06-02T10:47:20.3406212Z   fetch-tags: false
2026-06-02T10:47:20.3406712Z   show-progress: true
2026-06-02T10:47:20.3407217Z   lfs: false
2026-06-02T10:47:20.3408055Z   submodules: false
2026-06-02T10:47:20.3408574Z   set-safe-directory: true
2026-06-02T10:47:20.3409427Z ##[endgroup]
2026-06-02T10:47:20.4762019Z Syncing repository: SaberMage/spt-core
2026-06-02T10:47:20.4763986Z ##[group]Getting Git version info
2026-06-02T10:47:20.4764772Z Working directory is '/home/runner/work/spt-core/spt-core'
2026-06-02T10:47:20.4765991Z [command]/usr/bin/git version
2026-06-02T10:47:20.4775824Z git version 2.54.0
2026-06-02T10:47:20.4782760Z ##[endgroup]
2026-06-02T10:47:20.4793483Z Temporarily overriding HOME='/home/runner/work/_temp/494b8ad0-ea9e-4473-9874-88bd73659709' before making global git config changes
2026-06-02T10:47:20.4796633Z Adding repository directory to the temporary git global config as a safe directory
2026-06-02T10:47:20.4799869Z [command]/usr/bin/git config --global --add safe.directory /home/runner/work/spt-core/spt-core
2026-06-02T10:47:20.5652012Z Deleting the contents of '/home/runner/work/spt-core/spt-core'
2026-06-02T10:47:20.5654002Z ##[group]Initializing the repository
2026-06-02T10:47:20.5655894Z [command]/usr/bin/git init /home/runner/work/spt-core/spt-core
2026-06-02T10:47:20.5657888Z hint: Using 'master' as the name for the initial branch. This default branch name
2026-06-02T10:47:20.5659655Z hint: will change to "main" in Git 3.0. To configure the initial branch name
2026-06-02T10:47:20.5661400Z hint: to use in all of your new repositories, which will suppress this warning,
2026-06-02T10:47:20.5662791Z hint: call:
2026-06-02T10:47:20.5663515Z hint:
2026-06-02T10:47:20.5664389Z hint: 	git config --global init.defaultBranch <name>
2026-06-02T10:47:20.5666110Z hint:
2026-06-02T10:47:20.5667171Z hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
2026-06-02T10:47:20.5669089Z hint: 'development'. The just-created branch can be renamed via this command:
2026-06-02T10:47:20.5670401Z hint:
2026-06-02T10:47:20.5671165Z hint: 	git branch -m <name>
2026-06-02T10:47:20.5672038Z hint:
2026-06-02T10:47:20.5673196Z hint: Disable this message with "git config set advice.defaultBranchName false"
2026-06-02T10:47:20.5675042Z Initialized empty Git repository in /home/runner/work/spt-core/spt-core/.git/
2026-06-02T10:47:20.5678687Z [command]/usr/bin/git remote add origin https://github.com/SaberMage/spt-core
2026-06-02T10:47:20.5681511Z ##[endgroup]
2026-06-02T10:47:20.5683037Z ##[group]Disabling automatic garbage collection
2026-06-02T10:47:20.5684390Z [command]/usr/bin/git config --local gc.auto 0
2026-06-02T10:47:20.5686813Z ##[endgroup]
2026-06-02T10:47:20.5688558Z ##[group]Setting up auth
2026-06-02T10:47:20.5689849Z [command]/usr/bin/git config --local --name-only --get-regexp core\.sshCommand
2026-06-02T10:47:20.5693774Z [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' || :"
2026-06-02T10:47:20.5716476Z [command]/usr/bin/git config --local --name-only --get-regexp http\.https\:\/\/github\.com\/\.extraheader
2026-06-02T10:47:20.5727605Z [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' || :"
2026-06-02T10:47:20.6128591Z [command]/usr/bin/git config --local --name-only --get-regexp ^includeIf\.gitdir:
2026-06-02T10:47:20.6150669Z [command]/usr/bin/git submodule foreach --recursive git config --local --show-origin --name-only --get-regexp remote.origin.url
2026-06-02T10:47:20.6390335Z [command]/usr/bin/git config --local http.https://github.com/.extraheader AUTHORIZATION: basic ***
2026-06-02T10:47:20.6431836Z ##[endgroup]
2026-06-02T10:47:20.6433583Z ##[group]Fetching the repository
2026-06-02T10:47:20.6442227Z [command]/usr/bin/git -c protocol.version=2 fetch --no-tags --prune --no-recurse-submodules --depth=1 origin +5c26a4b6c2fe21c80380e9ae22cca317913cd73d:refs/remotes/origin/dev-freeform
2026-06-02T10:47:20.9323332Z From https://github.com/SaberMage/spt-core
2026-06-02T10:47:20.9339236Z  * [new ref]         5c26a4b6c2fe21c80380e9ae22cca317913cd73d -> origin/dev-freeform
2026-06-02T10:47:20.9400274Z ##[endgroup]
2026-06-02T10:47:20.9401856Z ##[group]Determining the checkout info
2026-06-02T10:47:20.9403672Z ##[endgroup]
2026-06-02T10:47:20.9404773Z [command]/usr/bin/git sparse-checkout disable
2026-06-02T10:47:20.9478918Z [command]/usr/bin/git config --local --unset-all extensions.worktreeConfig
2026-06-02T10:47:20.9503223Z ##[group]Checking out the ref
2026-06-02T10:47:20.9506517Z [command]/usr/bin/git checkout --progress --force -B dev-freeform refs/remotes/origin/dev-freeform
2026-06-02T10:47:20.9648513Z Switched to a new branch 'dev-freeform'
2026-06-02T10:47:20.9657140Z branch 'dev-freeform' set up to track 'origin/dev-freeform'.
2026-06-02T10:47:20.9662389Z ##[endgroup]
2026-06-02T10:47:20.9698708Z [command]/usr/bin/git log -1 --format=%H
2026-06-02T10:47:20.9726527Z 5c26a4b6c2fe21c80380e9ae22cca317913cd73d
2026-06-02T10:47:20.9975641Z ##[group]Run gh release download --repo BigscreenVR/traceable-reqs \
2026-06-02T10:47:20.9977838Z [36;1mgh release download --repo BigscreenVR/traceable-reqs \[0m
2026-06-02T10:47:20.9979599Z [36;1m  --pattern '*linux-x86_64' --output traceable-reqs[0m
2026-06-02T10:47:20.9981012Z [36;1mchmod +x traceable-reqs[0m
2026-06-02T10:47:21.0013885Z shell: /usr/bin/bash -e {0}
2026-06-02T10:47:21.0014914Z env:
2026-06-02T10:47:21.0017011Z   GH_TOKEN: ***
2026-06-02T10:47:21.0018068Z ##[endgroup]
2026-06-02T10:47:23.1574394Z ##[group]Run ./traceable-reqs check --json
2026-06-02T10:47:23.1575094Z [36;1m./traceable-reqs check --json[0m
2026-06-02T10:47:23.1604900Z shell: /usr/bin/bash -e {0}
2026-06-02T10:47:23.1605248Z ##[endgroup]
2026-06-02T10:47:23.1709511Z {
2026-06-02T10:47:23.1709877Z   "schemaVersion": 1,
2026-06-02T10:47:23.1710188Z   "summary": {
2026-06-02T10:47:23.1710503Z     "requirementCount": 116,
2026-06-02T10:47:23.1710846Z     "completeCount": 116,
2026-06-02T10:47:23.1711153Z     "incompleteCount": 0,
2026-06-02T10:47:23.1711443Z     "findingCount": 7
2026-06-02T10:47:23.1711996Z   },
2026-06-02T10:47:23.1712505Z   "requirements": [
2026-06-02T10:47:23.1713012Z     {
2026-06-02T10:47:23.1713507Z       "id": "REQ-API-1",
2026-06-02T10:47:23.1714391Z       "title": "api prefix and adapter_name on every machinery invocation",
2026-06-02T10:47:23.1715089Z       "requiredStages": [
2026-06-02T10:47:23.1715558Z         "impl",
2026-06-02T10:47:23.1715986Z         "unit",
2026-06-02T10:47:23.1716442Z         "int"
2026-06-02T10:47:23.1716836Z       ],
2026-06-02T10:47:23.1717213Z       "stages": {
2026-06-02T10:47:23.1718100Z         "doc": {
2026-06-02T10:47:23.1718534Z           "complete": false,
2026-06-02T10:47:23.1719022Z           "evidence": []
2026-06-02T10:47:23.1719439Z         },
2026-06-02T10:47:23.1719830Z         "impl": {
2026-06-02T10:47:23.1720237Z           "complete": true,
2026-06-02T10:47:23.1720682Z           "evidence": [
2026-06-02T10:47:23.1721114Z             {
2026-06-02T10:47:23.1722441Z               "path": "crates/spt/src/api/mod.rs",
2026-06-02T10:47:23.1722989Z               "line": 15
2026-06-02T10:47:23.1723407Z             }
2026-06-02T10:47:23.1723786Z           ]
2026-06-02T10:47:23.1724155Z         },
2026-06-02T10:47:23.1724518Z         "int": {
2026-06-02T10:47:23.1724917Z           "complete": true,
2026-06-02T10:47:23.1725362Z           "evidence": [
2026-06-02T10:47:23.1725771Z             {
2026-06-02T10:47:23.1726250Z               "path": "crates/spt/tests/contract_e2e.rs",
2026-06-02T10:47:23.1726810Z               "line": 13
2026-06-02T10:47:23.1727227Z             }
2026-06-02T10:47:23.1727864Z           ]
2026-06-02T10:47:23.1728245Z         },
2026-06-02T10:47:23.1728604Z         "unit": {
2026-06-02T10:47:23.1728992Z           "complete": true,
2026-06-02T10:47:23.1729433Z           "evidence": [
2026-06-02T10:47:23.1729837Z             {
2026-06-02T10:47:23.1730271Z               "path": "crates/spt/src/api/mod.rs",
2026-06-02T10:47:23.1730797Z               "line": 314
2026-06-02T10:47:23.1731201Z             },
2026-06-02T10:47:23.1731583Z             {
2026-06-02T10:47:23.1732011Z               "path": "crates/spt/src/api/mod.rs",
2026-06-02T10:47:23.1732549Z               "line": 320
2026-06-02T10:47:23.1732991Z             },
2026-06-02T10:47:23.1733377Z             {
2026-06-02T10:47:23.1733815Z               "path": "crates/spt/src/api/mod.rs",
2026-06-02T10:47:23.1734359Z               "line": 331
2026-06-02T10:47:23.1734943Z             }
2026-06-02T10:47:23.1735332Z           ]
2026-06-02T10:47:23.1735704Z         }
2026-06-02T10:47:23.1736089Z       }
2026-06-02T10:47:23.1736457Z     },
2026-06-02T10:47:23.1736819Z     {
2026-06-02T10:47:23.1737203Z       "id": "REQ-API-2",
2026-06-02T10:47:23.1745733Z       "title": "The api subcommand surface (bind/listen/poll/state/worker/boundary/...)",
2026-06-02T10:47:23.1746473Z       "requiredStages": [
2026-06-02T10:47:23.1746898Z         "impl",
2026-06-02T10:47:23.1747268Z         "unit",
2026-06-02T10:47:23.1747953Z         "int"
2026-06-02T10:47:23.1748312Z       ],
2026-06-02T10:47:23.1748667Z       "stages": {
2026-06-02T10:47:23.1749041Z         "doc": {
2026-06-02T10:47:23.1749434Z           "complete": false,
2026-06-02T10:47:23.1749889Z           "evidence": []
2026-06-02T10:47:23.1750292Z         },
2026-06-02T10:47:23.1750640Z         "impl": {
2026-06-02T10:47:23.1751028Z           "complete": true,
2026-06-02T10:47:23.1751461Z           "evidence": [
2026-06-02T10:47:23.1752161Z             {
2026-06-02T10:47:23.1752595Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-02T10:47:23.1753287Z               "line": 20
2026-06-02T10:47:23.1753689Z             },
2026-06-02T10:47:23.1754050Z             {
2026-06-02T10:47:23.1754467Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-02T10:47:23.1754987Z               "line": 125
2026-06-02T10:47:23.1755384Z             },
2026-06-02T10:47:23.1755739Z             {
2026-06-02T10:47:23.1756082Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-02T10:47:23.1756421Z               "line": 21
2026-06-02T10:47:23.1756682Z             },
2026-06-02T10:47:23.1756933Z             {
2026-06-02T10:47:23.1757221Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-02T10:47:23.1758122Z               "line": 36
2026-06-02T10:47:23.1758533Z             },
2026-06-02T10:47:23.1758782Z             {
2026-06-02T10:47:23.1759076Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-02T10:47:23.1759444Z               "line": 101
2026-06-02T10:47:23.1759728Z             },
2026-06-02T10:47:23.1759989Z             {
2026-06-02T10:47:23.1760276Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-02T10:47:23.1760619Z               "line": 133
2026-06-02T10:47:23.1760884Z             },
2026-06-02T10:47:23.1761131Z             {
2026-06-02T10:47:23.1761410Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-02T10:47:23.1761750Z               "line": 157
2026-06-02T10:47:23.1762023Z             },
2026-06-02T10:47:23.1835785Z             {
2026-06-02T10:47:23.1836253Z               "path": "crates/spt/src/api/worker.rs",
2026-06-02T10:47:23.1836810Z               "line": 17
2026-06-02T10:47:23.1837260Z             },
2026-06-02T10:47:23.1838033Z             {
2026-06-02T10:47:23.1838544Z               "path": "crates/spt/src/api/worker.rs",
2026-06-02T10:47:23.1839112Z               "line": 30
2026-06-02T10:47:23.1839493Z             },
2026-06-02T10:47:23.1839846Z             {
2026-06-02T10:47:23.1840235Z               "path": "crates/spt/src/api/worker.rs",
2026-06-02T10:47:23.1840723Z               "line": 63
2026-06-02T10:47:23.1841093Z             },
2026-06-02T10:47:23.1841426Z             {
2026-06-02T10:47:23.1841875Z               "path": "crates/spt/src/api/worker.rs",
2026-06-02T10:47:23.1842373Z               "line": 76
2026-06-02T10:47:23.1842744Z             }
2026-06-02T10:47:23.1843093Z           ]
2026-06-02T10:47:23.1843429Z         },
2026-06-02T10:47:23.1843787Z         "int": {
2026-06-02T10:47:23.1844186Z           "complete": true,
2026-06-02T10:47:23.1844638Z           "evidence": [
2026-06-02T10:47:23.1845024Z             {
2026-06-02T10:47:23.1845465Z               "path": "crates/spt/tests/contract_e2e.rs",
2026-06-02T10:47:23.1846002Z               "line": 14
2026-06-02T10:47:23.1846428Z             },
2026-06-02T10:47:23.1846802Z             {
2026-06-02T10:47:23.1847249Z               "path": "crates/spt/tests/contract_e2e.rs",
2026-06-02T10:47:23.1848075Z               "line": 122
2026-06-02T10:47:23.1848488Z             }
2026-06-02T10:47:23.1848855Z           ]
2026-06-02T10:47:23.1849236Z         },
2026-06-02T10:47:23.1849615Z         "unit": {
2026-06-02T10:47:23.1850019Z           "complete": true,
2026-06-02T10:47:23.1850470Z           "evidence": [
2026-06-02T10:47:23.1850884Z             {
2026-06-02T10:47:23.1851332Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-02T10:47:23.1851889Z               "line": 204
2026-06-02T10:47:23.1852292Z             },
2026-06-02T10:47:23.1852763Z             {
2026-06-02T10:47:23.1853190Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-02T10:47:23.1853717Z               "line": 230
2026-06-02T10:47:23.1854122Z             },
2026-06-02T10:47:23.1854459Z             {
2026-06-02T10:47:23.1854874Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-02T10:47:23.1855244Z               "line": 241
2026-06-02T10:47:23.1855514Z             },
2026-06-02T10:47:23.1856033Z             {
2026-06-02T10:47:23.1856322Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-02T10:47:23.1856786Z               "line": 277
2026-06-02T10:47:23.1857059Z             },
2026-06-02T10:47:23.1857294Z             {
2026-06-02T10:47:23.1857833Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-02T10:47:23.1858181Z               "line": 289
2026-06-02T10:47:23.1858442Z             },
2026-06-02T10:47:23.1858673Z             {
2026-06-02T10:47:23.1858951Z               "path": "crates/spt/src/api/worker.rs",
2026-06-02T10:47:23.1859283Z               "line": 137
2026-06-02T10:47:23.1859540Z             },
2026-06-02T10:47:23.1859776Z             {
2026-06-02T10:47:23.1860048Z               "path": "crates/spt/src/api/worker.rs",
2026-06-02T10:47:23.1860371Z               "line": 172
2026-06-02T10:47:23.1860622Z             }
2026-06-02T10:47:23.1860852Z           ]
2026-06-02T10:47:23.1861077Z         }
2026-06-02T10:47:23.1861320Z       }
2026-06-02T10:47:23.1861567Z     },
2026-06-02T10:47:23.1861798Z     {
2026-06-02T10:47:23.1862038Z       "id": "REQ-API-3",
2026-06-02T10:47:23.1862395Z       "title": "commune/signoff are file-drops, not commands",
2026-06-02T10:47:23.1862783Z       "requiredStages": [
2026-06-02T10:47:23.1863058Z         "impl",
2026-06-02T10:47:23.1863304Z         "unit",
2026-06-02T10:47:23.1863544Z         "int"
2026-06-02T10:47:23.1863780Z       ],
2026-06-02T10:47:23.1864019Z       "stages": {
2026-06-02T10:47:23.1864277Z         "doc": {
2026-06-02T10:47:23.1864533Z           "complete": false,
2026-06-02T10:47:23.1864820Z           "evidence": []
2026-06-02T10:47:23.1865085Z         },
2026-06-02T10:47:23.1865322Z         "impl": {
2026-06-02T10:47:23.1865582Z           "complete": true,
2026-06-02T10:47:23.1865874Z           "evidence": [
2026-06-02T10:47:23.1866138Z             {
2026-06-02T10:47:23.1866432Z               "path": "crates/spt-live/src/ingest.rs",
2026-06-02T10:47:23.1866786Z               "line": 14
2026-06-02T10:47:23.1867061Z             },
2026-06-02T10:47:23.1867568Z             {
2026-06-02T10:47:23.1867932Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-02T10:47:23.1868312Z               "line": 167
2026-06-02T10:47:23.1868584Z             }
2026-06-02T10:47:23.1868827Z           ]
2026-06-02T10:47:23.1869066Z         },
2026-06-02T10:47:23.1869310Z         "int": {
2026-06-02T10:47:23.1869578Z           "complete": true,
2026-06-02T10:47:23.1869866Z           "evidence": [
2026-06-02T10:47:23.1870140Z             {
2026-06-02T10:47:23.1870457Z               "path": "crates/spt/tests/contract_e2e.rs",
2026-06-02T10:47:23.1870815Z               "line": 173
2026-06-02T10:47:23.1871077Z             }
2026-06-02T10:47:23.1871322Z           ]
2026-06-02T10:47:23.1871564Z         },
2026-06-02T10:47:23.1871810Z         "unit": {
2026-06-02T10:47:23.1872085Z           "complete": true,
2026-06-02T10:47:23.1872375Z           "evidence": [
2026-06-02T10:47:23.1872645Z             {
2026-06-02T10:47:23.1872962Z               "path": "crates/spt-live/src/ingest.rs",
2026-06-02T10:47:23.1873308Z               "line": 117
2026-06-02T10:47:23.1873584Z             },
2026-06-02T10:47:23.1873834Z             {
2026-06-02T10:47:23.1874142Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-02T10:47:23.1874491Z               "line": 298
2026-06-02T10:47:23.1874754Z             }
2026-06-02T10:47:23.1874991Z           ]
2026-06-02T10:47:23.1875233Z         }
2026-06-02T10:47:23.1875465Z       }
2026-06-02T10:47:23.1875699Z     },
2026-06-02T10:47:23.1875928Z     {
2026-06-02T10:47:23.1876184Z       "id": "REQ-ARCH-1",
2026-06-02T10:47:23.1876530Z       "title": "Many small acyclically-layered crates",
2026-06-02T10:47:23.1876890Z       "requiredStages": [
2026-06-02T10:47:23.1877163Z         "impl"
2026-06-02T10:47:23.1877630Z       ],
2026-06-02T10:47:23.1877881Z       "stages": {
2026-06-02T10:47:23.1878144Z         "doc": {
2026-06-02T10:47:23.1878412Z           "complete": false,
2026-06-02T10:47:23.1878885Z           "evidence": []
2026-06-02T10:47:23.1879158Z         },
2026-06-02T10:47:23.1879398Z         "impl": {
2026-06-02T10:47:23.1879785Z           "complete": true,
2026-06-02T10:47:23.1880073Z           "evidence": [
2026-06-02T10:47:23.1880339Z             {
2026-06-02T10:47:23.1880643Z               "path": "crates/spt-msg/src/lib.rs",
2026-06-02T10:47:23.1880986Z               "line": 16
2026-06-02T10:47:23.1881250Z             },
2026-06-02T10:47:23.1881491Z             {
2026-06-02T10:47:23.1881790Z               "path": "crates/spt-proto/src/lib.rs",
2026-06-02T10:47:23.1882132Z               "line": 12
2026-06-02T10:47:23.1882396Z             },
2026-06-02T10:47:23.1882644Z             {
2026-06-02T10:47:23.1882938Z               "path": "crates/spt-store/src/lib.rs",
2026-06-02T10:47:23.1883268Z               "line": 12
2026-06-02T10:47:23.1883531Z             }
2026-06-02T10:47:23.1883769Z           ]
2026-06-02T10:47:23.1884007Z         },
2026-06-02T10:47:23.1884244Z         "int": {
2026-06-02T10:47:23.1884516Z           "complete": false,
2026-06-02T10:47:23.1884812Z           "evidence": []
2026-06-02T10:47:23.1885087Z         },
2026-06-02T10:47:23.1885331Z         "unit": {
2026-06-02T10:47:23.1885597Z           "complete": false,
2026-06-02T10:47:23.1885882Z           "evidence": []
2026-06-02T10:47:23.1886145Z         }
2026-06-02T10:47:23.1886381Z       }
2026-06-02T10:47:23.1886608Z     },
2026-06-02T10:47:23.1886837Z     {
2026-06-02T10:47:23.1887087Z       "id": "REQ-ARCH-2",
2026-06-02T10:47:23.1887710Z       "title": "Public SDK surface is spt-proto, spt-runtime, spt-msg",
2026-06-02T10:47:23.1888167Z       "requiredStages": [
2026-06-02T10:47:23.1888453Z         "impl"
2026-06-02T10:47:23.1888700Z       ],
2026-06-02T10:47:23.1888940Z       "stages": {
2026-06-02T10:47:23.1889195Z         "doc": {
2026-06-02T10:47:23.1889461Z           "complete": false,
2026-06-02T10:47:23.1889768Z           "evidence": []
2026-06-02T10:47:23.1890039Z         },
2026-06-02T10:47:23.1890293Z         "impl": {
2026-06-02T10:47:23.1890561Z           "complete": true,
2026-06-02T10:47:23.1890848Z           "evidence": [
2026-06-02T10:47:23.1891127Z             {
2026-06-02T10:47:23.1891438Z               "path": "crates/spt-runtime/src/lib.rs",
2026-06-02T10:47:23.1891795Z               "line": 18
2026-06-02T10:47:23.1892066Z             }
2026-06-02T10:47:23.1892306Z           ]
2026-06-02T10:47:23.1892544Z         },
2026-06-02T10:47:23.1892785Z         "int": {
2026-06-02T10:47:23.1893054Z           "complete": false,
2026-06-02T10:47:23.1893353Z           "evidence": []
2026-06-02T10:47:23.1893621Z         },
2026-06-02T10:47:23.1893855Z         "unit": {
2026-06-02T10:47:23.1894120Z           "complete": false,
2026-06-02T10:47:23.1894412Z           "evidence": []
2026-06-02T10:47:23.1894683Z         }
2026-06-02T10:47:23.1894922Z       }
2026-06-02T10:47:23.1895141Z     },
2026-06-02T10:47:23.1895367Z     {
2026-06-02T10:47:23.1895621Z       "id": "REQ-ARCH-3",
2026-06-02T10:47:23.1896084Z       "title": "Wire-protocol version independent of crate semver, N-1 compat window",
2026-06-02T10:47:23.1896557Z       "requiredStages": [
2026-06-02T10:47:23.1896835Z         "impl",
2026-06-02T10:47:23.1897088Z         "unit"
2026-06-02T10:47:23.1897446Z       ],
2026-06-02T10:47:23.1897696Z       "stages": {
2026-06-02T10:47:23.1897954Z         "doc": {
2026-06-02T10:47:23.1898224Z           "complete": false,
2026-06-02T10:47:23.1898523Z           "evidence": []
2026-06-02T10:47:23.1898789Z         },
2026-06-02T10:47:23.1899027Z         "impl": {
2026-06-02T10:47:23.1899285Z           "complete": true,
2026-06-02T10:47:23.1899572Z           "evidence": [
2026-06-02T10:47:23.1899839Z             {
2026-06-02T10:47:23.1900153Z               "path": "crates/spt-proto/src/version.rs",
2026-06-02T10:47:23.1900503Z               "line": 34
2026-06-02T10:47:23.1900762Z             },
2026-06-02T10:47:23.1901007Z             {
2026-06-02T10:47:23.1901301Z               "path": "crates/spt-proto/src/version.rs",
2026-06-02T10:47:23.1901826Z               "line": 41
2026-06-02T10:47:23.1902086Z             }
2026-06-02T10:47:23.1902442Z           ]
2026-06-02T10:47:23.1902680Z         },
2026-06-02T10:47:23.1902919Z         "int": {
2026-06-02T10:47:23.1903190Z           "complete": false,
2026-06-02T10:47:23.1903484Z           "evidence": []
2026-06-02T10:47:23.1903747Z         },
2026-06-02T10:47:23.1903978Z         "unit": {
2026-06-02T10:47:23.1904236Z           "complete": true,
2026-06-02T10:47:23.1904520Z           "evidence": [
2026-06-02T10:47:23.1904782Z             {
2026-06-02T10:47:23.1905089Z               "path": "crates/spt-proto/src/version.rs",
2026-06-02T10:47:23.1905434Z               "line": 51
2026-06-02T10:47:23.1905691Z             },
2026-06-02T10:47:23.1905930Z             {
2026-06-02T10:47:23.1906225Z               "path": "crates/spt-proto/src/version.rs",
2026-06-02T10:47:23.1906556Z               "line": 65
2026-06-02T10:47:23.1906813Z             },
2026-06-02T10:47:23.1907056Z             {
2026-06-02T10:47:23.1907492Z               "path": "crates/spt-proto/src/version.rs",
2026-06-02T10:47:23.1907841Z               "line": 74
2026-06-02T10:47:23.1908095Z             }
2026-06-02T10:47:23.1908328Z           ]
2026-06-02T10:47:23.1908560Z         }
2026-06-02T10:47:23.1908789Z       }
2026-06-02T10:47:23.1909015Z     },
2026-06-02T10:47:23.1909234Z     {
2026-06-02T10:47:23.1909485Z       "id": "REQ-ARCH-4",
2026-06-02T10:47:23.1909908Z       "title": "Copy-verbatim the commodity layer from the sister project",
2026-06-02T10:47:23.1910335Z       "requiredStages": [
2026-06-02T10:47:23.1910612Z         "impl",
2026-06-02T10:47:23.1910863Z         "unit"
2026-06-02T10:47:23.1911106Z       ],
2026-06-02T10:47:23.1911345Z       "stages": {
2026-06-02T10:47:23.1911597Z         "doc": {
2026-06-02T10:47:23.1911863Z           "complete": false,
2026-06-02T10:47:23.1912162Z           "evidence": []
2026-06-02T10:47:23.1912429Z         },
2026-06-02T10:47:23.1912670Z         "impl": {
2026-06-02T10:47:23.1912946Z           "complete": true,
2026-06-02T10:47:23.1913239Z           "evidence": [
2026-06-02T10:47:23.1913522Z             {
2026-06-02T10:47:23.1913824Z               "path": "crates/spt-proto/src/event.rs",
2026-06-02T10:47:23.1914169Z               "line": 32
2026-06-02T10:47:23.1914435Z             },
2026-06-02T10:47:23.1914685Z             {
2026-06-02T10:47:23.1914985Z               "path": "crates/spt-proto/src/event.rs",
2026-06-02T10:47:23.1915321Z               "line": 46
2026-06-02T10:47:23.1915585Z             },
2026-06-02T10:47:23.1915824Z             {
2026-06-02T10:47:23.1916115Z               "path": "crates/spt-proto/src/event.rs",
2026-06-02T10:47:23.1916449Z               "line": 66
2026-06-02T10:47:23.1916708Z             },
2026-06-02T10:47:23.1916955Z             {
2026-06-02T10:47:23.1917243Z               "path": "crates/spt-proto/src/event.rs",
2026-06-02T10:47:23.1917700Z               "line": 81
2026-06-02T10:47:23.1917965Z             },
2026-06-02T10:47:23.1918214Z             {
2026-06-02T10:47:23.1918515Z               "path": "crates/spt-proto/src/event.rs",
2026-06-02T10:47:23.1918884Z               "line": 131
2026-06-02T10:47:23.1919155Z             }
2026-06-02T10:47:23.1919396Z           ]
2026-06-02T10:47:23.1919633Z         },
2026-06-02T10:47:23.1919867Z         "int": {
2026-06-02T10:47:23.1920138Z           "complete": false,
2026-06-02T10:47:23.1920437Z           "evidence": []
2026-06-02T10:47:23.1920704Z         },
2026-06-02T10:47:23.1920941Z         "unit": {
2026-06-02T10:47:23.1921211Z           "complete": true,
2026-06-02T10:47:23.1921503Z           "evidence": [
2026-06-02T10:47:23.1921770Z             {
2026-06-02T10:47:23.1922079Z               "path": "crates/spt-proto/src/event.rs",
2026-06-02T10:47:23.1922423Z               "line": 195
2026-06-02T10:47:23.1922691Z             },
2026-06-02T10:47:23.1922932Z             {
2026-06-02T10:47:23.1923221Z               "path": "crates/spt-proto/src/event.rs",
2026-06-02T10:47:23.1923703Z               "line": 205
2026-06-02T10:47:23.1923970Z             },
2026-06-02T10:47:23.1924213Z             {
2026-06-02T10:47:23.1924635Z               "path": "crates/spt-proto/src/event.rs",
2026-06-02T10:47:23.1924970Z               "line": 216
2026-06-02T10:47:23.1925240Z             },
2026-06-02T10:47:23.1925482Z             {
2026-06-02T10:47:23.1925768Z               "path": "crates/spt-proto/src/event.rs",
2026-06-02T10:47:23.1926096Z               "line": 227
2026-06-02T10:47:23.1926362Z             },
2026-06-02T10:47:23.1926608Z             {
2026-06-02T10:47:23.1926910Z               "path": "crates/spt-proto/src/event.rs",
2026-06-02T10:47:23.1927242Z               "line": 239
2026-06-02T10:47:23.1927631Z             },
2026-06-02T10:47:23.1927875Z             {
2026-06-02T10:47:23.1928160Z               "path": "crates/spt-proto/src/event.rs",
2026-06-02T10:47:23.1928489Z               "line": 252
2026-06-02T10:47:23.1928752Z             },
2026-06-02T10:47:23.1928993Z             {
2026-06-02T10:47:23.1929304Z               "path": "crates/spt-proto/src/event.rs",
2026-06-02T10:47:23.1929638Z               "line": 263
2026-06-02T10:47:23.1929907Z             },
2026-06-02T10:47:23.1930145Z             {
2026-06-02T10:47:23.1930436Z               "path": "crates/spt-proto/src/event.rs",
2026-06-02T10:47:23.1930772Z               "line": 277
2026-06-02T10:47:23.1931034Z             },
2026-06-02T10:47:23.1931274Z             {
2026-06-02T10:47:23.1931561Z               "path": "crates/spt-proto/src/event.rs",
2026-06-02T10:47:23.1931900Z               "line": 286
2026-06-02T10:47:23.1932158Z             }
2026-06-02T10:47:23.1932398Z           ]
2026-06-02T10:47:23.1932633Z         }
2026-06-02T10:47:23.1932872Z       }
2026-06-02T10:47:23.1933100Z     },
2026-06-02T10:47:23.1933332Z     {
2026-06-02T10:47:23.1933588Z       "id": "REQ-DAEMON-1",
2026-06-02T10:47:23.1933994Z       "title": "One per-machine spt-daemon owning all per-machine state",
2026-06-02T10:47:23.1934422Z       "requiredStages": [],
2026-06-02T10:47:23.1934755Z       "stages": {
2026-06-02T10:47:23.1935014Z         "doc": {
2026-06-02T10:47:23.1935293Z           "complete": false,
2026-06-02T10:47:23.1935593Z           "evidence": []
2026-06-02T10:47:23.1935864Z         },
2026-06-02T10:47:23.1936105Z         "impl": {
2026-06-02T10:47:23.1936377Z           "complete": false,
2026-06-02T10:47:23.1936695Z           "evidence": []
2026-06-02T10:47:23.1936967Z         },
2026-06-02T10:47:23.1937208Z         "int": {
2026-06-02T10:47:23.1937579Z           "complete": false,
2026-06-02T10:47:23.1937882Z           "evidence": []
2026-06-02T10:47:23.1938147Z         },
2026-06-02T10:47:23.1938386Z         "unit": {
2026-06-02T10:47:23.1938651Z           "complete": false,
2026-06-02T10:47:23.1938943Z           "evidence": []
2026-06-02T10:47:23.1939214Z         }
2026-06-02T10:47:23.1939449Z       }
2026-06-02T10:47:23.1939679Z     },
2026-06-02T10:47:23.1939911Z     {
2026-06-02T10:47:23.1940166Z       "id": "REQ-DAEMON-2",
2026-06-02T10:47:23.1940544Z       "title": "Broker/brain split for seamless self-update",
2026-06-02T10:47:23.1940958Z       "requiredStages": [],
2026-06-02T10:47:23.1941247Z       "stages": {
2026-06-02T10:47:23.1941504Z         "doc": {
2026-06-02T10:47:23.1941766Z           "complete": false,
2026-06-02T10:47:23.1942054Z           "evidence": []
2026-06-02T10:47:23.1942326Z         },
2026-06-02T10:47:23.1942575Z         "impl": {
2026-06-02T10:47:23.1942844Z           "complete": false,
2026-06-02T10:47:23.1943139Z           "evidence": []
2026-06-02T10:47:23.1943413Z         },
2026-06-02T10:47:23.1943658Z         "int": {
2026-06-02T10:47:23.1943929Z           "complete": false,
2026-06-02T10:47:23.1944216Z           "evidence": []
2026-06-02T10:47:23.1944484Z         },
2026-06-02T10:47:23.1944723Z         "unit": {
2026-06-02T10:47:23.1944989Z           "complete": false,
2026-06-02T10:47:23.1945282Z           "evidence": []
2026-06-02T10:47:23.1945556Z         }
2026-06-02T10:47:23.1945790Z       }
2026-06-02T10:47:23.1946229Z     },
2026-06-02T10:47:23.1946474Z     {
2026-06-02T10:47:23.1946727Z       "id": "REQ-DAEMON-3",
2026-06-02T10:47:23.1947247Z       "title": "Any api invocation auto-starts the daemon if absent",
2026-06-02T10:47:23.1947776Z       "requiredStages": [],
2026-06-02T10:47:23.1948066Z       "stages": {
2026-06-02T10:47:23.1948325Z         "doc": {
2026-06-02T10:47:23.1948593Z           "complete": false,
2026-06-02T10:47:23.1948891Z           "evidence": []
2026-06-02T10:47:23.1949172Z         },
2026-06-02T10:47:23.1949420Z         "impl": {
2026-06-02T10:47:23.1949690Z           "complete": false,
2026-06-02T10:47:23.1949988Z           "evidence": []
2026-06-02T10:47:23.1950259Z         },
2026-06-02T10:47:23.1950499Z         "int": {
2026-06-02T10:47:23.1950767Z           "complete": false,
2026-06-02T10:47:23.1951055Z           "evidence": []
2026-06-02T10:47:23.1951319Z         },
2026-06-02T10:47:23.1951568Z         "unit": {
2026-06-02T10:47:23.1951838Z           "complete": false,
2026-06-02T10:47:23.1952133Z           "evidence": []
2026-06-02T10:47:23.1952401Z         }
2026-06-02T10:47:23.1952647Z       }
2026-06-02T10:47:23.1952880Z     },
2026-06-02T10:47:23.1953114Z     {
2026-06-02T10:47:23.1953362Z       "id": "REQ-DAEMON-4",
2026-06-02T10:47:23.1953698Z       "title": "Honor every KNOWN-HAZARDS invariant",
2026-06-02T10:47:23.1954070Z       "requiredStages": [],
2026-06-02T10:47:23.1954355Z       "stages": {
2026-06-02T10:47:23.1954608Z         "doc": {
2026-06-02T10:47:23.1954872Z           "complete": false,
2026-06-02T10:47:23.1955163Z           "evidence": []
2026-06-02T10:47:23.1955431Z         },
2026-06-02T10:47:23.1955676Z         "impl": {
2026-06-02T10:47:23.1955941Z           "complete": false,
2026-06-02T10:47:23.1956235Z           "evidence": []
2026-06-02T10:47:23.1956505Z         },
2026-06-02T10:47:23.1956748Z         "int": {
2026-06-02T10:47:23.1957008Z           "complete": false,
2026-06-02T10:47:23.1957299Z           "evidence": []
2026-06-02T10:47:23.1957685Z         },
2026-06-02T10:47:23.1957936Z         "unit": {
2026-06-02T10:47:23.1958204Z           "complete": false,
2026-06-02T10:47:23.1958504Z           "evidence": []
2026-06-02T10:47:23.1958779Z         }
2026-06-02T10:47:23.1959014Z       }
2026-06-02T10:47:23.1959242Z     },
2026-06-02T10:47:23.1959476Z     {
2026-06-02T10:47:23.1959734Z       "id": "REQ-DOCS-1",
2026-06-02T10:47:23.1960180Z       "title": "Dual-audience docs (human + AI dev-agent), markdown once / two depths",
2026-06-02T10:47:23.1960651Z       "requiredStages": [],
2026-06-02T10:47:23.1960938Z       "stages": {
2026-06-02T10:47:23.1961194Z         "doc": {
2026-06-02T10:47:23.1961467Z           "complete": false,
2026-06-02T10:47:23.1961756Z           "evidence": []
2026-06-02T10:47:23.1962023Z         },
2026-06-02T10:47:23.1962268Z         "impl": {
2026-06-02T10:47:23.1962532Z           "complete": false,
2026-06-02T10:47:23.1962821Z           "evidence": []
2026-06-02T10:47:23.1963087Z         },
2026-06-02T10:47:23.1963327Z         "int": {
2026-06-02T10:47:23.1963612Z           "complete": false,
2026-06-02T10:47:23.1963900Z           "evidence": []
2026-06-02T10:47:23.1964169Z         },
2026-06-02T10:47:23.1964411Z         "unit": {
2026-06-02T10:47:23.1964680Z           "complete": false,
2026-06-02T10:47:23.1964969Z           "evidence": []
2026-06-02T10:47:23.1965234Z         }
2026-06-02T10:47:23.1965469Z       }
2026-06-02T10:47:23.1965710Z     },
2026-06-02T10:47:23.1965957Z     {
2026-06-02T10:47:23.1966208Z       "id": "REQ-DOCS-2",
2026-06-02T10:47:23.1966598Z       "title": "Sub-10-minute runnable killer quickstart per audience",
2026-06-02T10:47:23.1967016Z       "requiredStages": [],
2026-06-02T10:47:23.1967301Z       "stages": {
2026-06-02T10:47:23.1967663Z         "doc": {
2026-06-02T10:47:23.1967929Z           "complete": false,
2026-06-02T10:47:23.1968215Z           "evidence": []
2026-06-02T10:47:23.1968483Z         },
2026-06-02T10:47:23.1968734Z         "impl": {
2026-06-02T10:47:23.1969001Z           "complete": false,
2026-06-02T10:47:23.1969444Z           "evidence": []
2026-06-02T10:47:23.1969715Z         },
2026-06-02T10:47:23.1970081Z         "int": {
2026-06-02T10:47:23.1970348Z           "complete": false,
2026-06-02T10:47:23.1970629Z           "evidence": []
2026-06-02T10:47:23.1970894Z         },
2026-06-02T10:47:23.1971140Z         "unit": {
2026-06-02T10:47:23.1971404Z           "complete": false,
2026-06-02T10:47:23.1971690Z           "evidence": []
2026-06-02T10:47:23.1971950Z         }
2026-06-02T10:47:23.1972186Z       }
2026-06-02T10:47:23.1972419Z     },
2026-06-02T10:47:23.1972652Z     {
2026-06-02T10:47:23.1972904Z       "id": "REQ-DOCS-3",
2026-06-02T10:47:23.1973581Z       "title": "Diátaxis structure; one canonical way to do X",
2026-06-02T10:47:23.1974015Z       "requiredStages": [],
2026-06-02T10:47:23.1974305Z       "stages": {
2026-06-02T10:47:23.1974559Z         "doc": {
2026-06-02T10:47:23.1974827Z           "complete": false,
2026-06-02T10:47:23.1975123Z           "evidence": []
2026-06-02T10:47:23.1975410Z         },
2026-06-02T10:47:23.1975658Z         "impl": {
2026-06-02T10:47:23.1975925Z           "complete": false,
2026-06-02T10:47:23.1976234Z           "evidence": []
2026-06-02T10:47:23.1976505Z         },
2026-06-02T10:47:23.1976741Z         "int": {
2026-06-02T10:47:23.1977006Z           "complete": false,
2026-06-02T10:47:23.1977295Z           "evidence": []
2026-06-02T10:47:23.1977674Z         },
2026-06-02T10:47:23.1977913Z         "unit": {
2026-06-02T10:47:23.1978183Z           "complete": false,
2026-06-02T10:47:23.1978473Z           "evidence": []
2026-06-02T10:47:23.1978741Z         }
2026-06-02T10:47:23.1978987Z       }
2026-06-02T10:47:23.1979221Z     },
2026-06-02T10:47:23.1979457Z     {
2026-06-02T10:47:23.1979704Z       "id": "REQ-DOCS-4",
2026-06-02T10:47:23.1980149Z       "title": "Agent-consumable layer (llms.txt, manifest schema, MCP, CLI help)",
2026-06-02T10:47:23.1980613Z       "requiredStages": [],
2026-06-02T10:47:23.1980902Z       "stages": {
2026-06-02T10:47:23.1981168Z         "doc": {
2026-06-02T10:47:23.1981443Z           "complete": false,
2026-06-02T10:47:23.1981738Z           "evidence": []
2026-06-02T10:47:23.1982007Z         },
2026-06-02T10:47:23.1982247Z         "impl": {
2026-06-02T10:47:23.1982508Z           "complete": false,
2026-06-02T10:47:23.1982796Z           "evidence": []
2026-06-02T10:47:23.1983058Z         },
2026-06-02T10:47:23.1983308Z         "int": {
2026-06-02T10:47:23.1983578Z           "complete": false,
2026-06-02T10:47:23.1983868Z           "evidence": []
2026-06-02T10:47:23.1984136Z         },
2026-06-02T10:47:23.1984377Z         "unit": {
2026-06-02T10:47:23.1984642Z           "complete": false,
2026-06-02T10:47:23.1984939Z           "evidence": []
2026-06-02T10:47:23.1985203Z         }
2026-06-02T10:47:23.1985440Z       }
2026-06-02T10:47:23.1985674Z     },
2026-06-02T10:47:23.1985904Z     {
2026-06-02T10:47:23.1986164Z       "id": "REQ-DOCS-5",
2026-06-02T10:47:23.1986610Z       "title": "Anti-drift: rustdoc/schema/exports/CLI-help generated + CI-checked",
2026-06-02T10:47:23.1987066Z       "requiredStages": [],
2026-06-02T10:47:23.1987470Z       "stages": {
2026-06-02T10:47:23.1987758Z         "doc": {
2026-06-02T10:47:23.1988028Z           "complete": false,
2026-06-02T10:47:23.1988318Z           "evidence": []
2026-06-02T10:47:23.1988585Z         },
2026-06-02T10:47:23.1988833Z         "impl": {
2026-06-02T10:47:23.1989092Z           "complete": false,
2026-06-02T10:47:23.1989380Z           "evidence": []
2026-06-02T10:47:23.1989647Z         },
2026-06-02T10:47:23.1989887Z         "int": {
2026-06-02T10:47:23.1990155Z           "complete": false,
2026-06-02T10:47:23.1990443Z           "evidence": []
2026-06-02T10:47:23.1990706Z         },
2026-06-02T10:47:23.1990948Z         "unit": {
2026-06-02T10:47:23.1991219Z           "complete": false,
2026-06-02T10:47:23.1991507Z           "evidence": []
2026-06-02T10:47:23.1991769Z         }
2026-06-02T10:47:23.1992001Z       }
2026-06-02T10:47:23.1992233Z     },
2026-06-02T10:47:23.1992466Z     {
2026-06-02T10:47:23.1992936Z       "id": "REQ-EP-1",
2026-06-02T10:47:23.1993286Z       "title": "Day-one endpoint types; open type system",
2026-06-02T10:47:23.1993803Z       "requiredStages": [
2026-06-02T10:47:23.1994090Z         "impl",
2026-06-02T10:47:23.1994347Z         "unit"
2026-06-02T10:47:23.1994596Z       ],
2026-06-02T10:47:23.1994838Z       "stages": {
2026-06-02T10:47:23.1995092Z         "doc": {
2026-06-02T10:47:23.1995363Z           "complete": false,
2026-06-02T10:47:23.1995659Z           "evidence": []
2026-06-02T10:47:23.1995931Z         },
2026-06-02T10:47:23.1996186Z         "impl": {
2026-06-02T10:47:23.1996458Z           "complete": true,
2026-06-02T10:47:23.1996752Z           "evidence": [
2026-06-02T10:47:23.1997018Z             {
2026-06-02T10:47:23.1997440Z               "path": "crates/spt-proto/src/endpoint.rs",
2026-06-02T10:47:23.1997807Z               "line": 77
2026-06-02T10:47:23.1998083Z             },
2026-06-02T10:47:23.1998333Z             {
2026-06-02T10:47:23.1998651Z               "path": "crates/spt-proto/src/endpoint.rs",
2026-06-02T10:47:23.1999015Z               "line": 94
2026-06-02T10:47:23.1999291Z             }
2026-06-02T10:47:23.1999532Z           ]
2026-06-02T10:47:23.1999772Z         },
2026-06-02T10:47:23.2000014Z         "int": {
2026-06-02T10:47:23.2000279Z           "complete": false,
2026-06-02T10:47:23.2000575Z           "evidence": []
2026-06-02T10:47:23.2000839Z         },
2026-06-02T10:47:23.2001089Z         "unit": {
2026-06-02T10:47:23.2001359Z           "complete": true,
2026-06-02T10:47:23.2001649Z           "evidence": [
2026-06-02T10:47:23.2001926Z             {
2026-06-02T10:47:23.2002232Z               "path": "crates/spt-proto/src/endpoint.rs",
2026-06-02T10:47:23.2002584Z               "line": 161
2026-06-02T10:47:23.2002859Z             },
2026-06-02T10:47:23.2003107Z             {
2026-06-02T10:47:23.2003412Z               "path": "crates/spt-proto/src/endpoint.rs",
2026-06-02T10:47:23.2003772Z               "line": 178
2026-06-02T10:47:23.2004044Z             }
2026-06-02T10:47:23.2004285Z           ]
2026-06-02T10:47:23.2004533Z         }
2026-06-02T10:47:23.2004777Z       }
2026-06-02T10:47:23.2005018Z     },
2026-06-02T10:47:23.2005252Z     {
2026-06-02T10:47:23.2005502Z       "id": "REQ-EP-2",
2026-06-02T10:47:23.2005896Z       "title": "Agent endpoints vs Shells distinction in the type model",
2026-06-02T10:47:23.2006323Z       "requiredStages": [
2026-06-02T10:47:23.2006602Z         "impl",
2026-06-02T10:47:23.2006862Z         "unit"
2026-06-02T10:47:23.2007108Z       ],
2026-06-02T10:47:23.2007447Z       "stages": {
2026-06-02T10:47:23.2007706Z         "doc": {
2026-06-02T10:47:23.2007972Z           "complete": false,
2026-06-02T10:47:23.2008268Z           "evidence": []
2026-06-02T10:47:23.2008541Z         },
2026-06-02T10:47:23.2008783Z         "impl": {
2026-06-02T10:47:23.2009054Z           "complete": true,
2026-06-02T10:47:23.2009341Z           "evidence": [
2026-06-02T10:47:23.2009610Z             {
2026-06-02T10:47:23.2009917Z               "path": "crates/spt-proto/src/endpoint.rs",
2026-06-02T10:47:23.2010267Z               "line": 114
2026-06-02T10:47:23.2010543Z             },
2026-06-02T10:47:23.2010785Z             {
2026-06-02T10:47:23.2011098Z               "path": "crates/spt-proto/src/endpoint.rs",
2026-06-02T10:47:23.2011446Z               "line": 131
2026-06-02T10:47:23.2011717Z             },
2026-06-02T10:47:23.2011966Z             {
2026-06-02T10:47:23.2012266Z               "path": "crates/spt-proto/src/endpoint.rs",
2026-06-02T10:47:23.2012609Z               "line": 138
2026-06-02T10:47:23.2012875Z             }
2026-06-02T10:47:23.2013118Z           ]
2026-06-02T10:47:23.2013360Z         },
2026-06-02T10:47:23.2013594Z         "int": {
2026-06-02T10:47:23.2013867Z           "complete": false,
2026-06-02T10:47:23.2014163Z           "evidence": []
2026-06-02T10:47:23.2014435Z         },
2026-06-02T10:47:23.2014677Z         "unit": {
2026-06-02T10:47:23.2014940Z           "complete": true,
2026-06-02T10:47:23.2015396Z           "evidence": [
2026-06-02T10:47:23.2015661Z             {
2026-06-02T10:47:23.2015970Z               "path": "crates/spt-proto/src/endpoint.rs",
2026-06-02T10:47:23.2016454Z               "line": 193
2026-06-02T10:47:23.2016758Z             },
2026-06-02T10:47:23.2017007Z             {
2026-06-02T10:47:23.2017306Z               "path": "crates/spt-proto/src/endpoint.rs",
2026-06-02T10:47:23.2017768Z               "line": 211
2026-06-02T10:47:23.2018033Z             },
2026-06-02T10:47:23.2018285Z             {
2026-06-02T10:47:23.2018596Z               "path": "crates/spt-proto/src/endpoint.rs",
2026-06-02T10:47:23.2018942Z               "line": 224
2026-06-02T10:47:23.2019205Z             }
2026-06-02T10:47:23.2019446Z           ]
2026-06-02T10:47:23.2019684Z         }
2026-06-02T10:47:23.2019917Z       }
2026-06-02T10:47:23.2020148Z     },
2026-06-02T10:47:23.2020386Z     {
2026-06-02T10:47:23.2020638Z       "id": "REQ-EP-3",
2026-06-02T10:47:23.2021079Z       "title": "Messaging payloads carry typed operation commands + file blobs",
2026-06-02T10:47:23.2021531Z       "requiredStages": [
2026-06-02T10:47:23.2021821Z         "impl",
2026-06-02T10:47:23.2022072Z         "unit"
2026-06-02T10:47:23.2022318Z       ],
2026-06-02T10:47:23.2022558Z       "stages": {
2026-06-02T10:47:23.2022812Z         "doc": {
2026-06-02T10:47:23.2023081Z           "complete": false,
2026-06-02T10:47:23.2023387Z           "evidence": []
2026-06-02T10:47:23.2023656Z         },
2026-06-02T10:47:23.2023897Z         "impl": {
2026-06-02T10:47:23.2024165Z           "complete": true,
2026-06-02T10:47:23.2024461Z           "evidence": [
2026-06-02T10:47:23.2024731Z             {
2026-06-02T10:47:23.2025036Z               "path": "crates/spt-proto/src/payload.rs",
2026-06-02T10:47:23.2025383Z               "line": 31
2026-06-02T10:47:23.2025652Z             },
2026-06-02T10:47:23.2025902Z             {
2026-06-02T10:47:23.2026204Z               "path": "crates/spt-proto/src/payload.rs",
2026-06-02T10:47:23.2026560Z               "line": 49
2026-06-02T10:47:23.2026827Z             }
2026-06-02T10:47:23.2027068Z           ]
2026-06-02T10:47:23.2027436Z         },
2026-06-02T10:47:23.2027678Z         "int": {
2026-06-02T10:47:23.2027948Z           "complete": false,
2026-06-02T10:47:23.2028253Z           "evidence": []
2026-06-02T10:47:23.2028532Z         },
2026-06-02T10:47:23.2028773Z         "unit": {
2026-06-02T10:47:23.2029042Z           "complete": true,
2026-06-02T10:47:23.2029333Z           "evidence": [
2026-06-02T10:47:23.2029593Z             {
2026-06-02T10:47:23.2029899Z               "path": "crates/spt-proto/src/payload.rs",
2026-06-02T10:47:23.2030251Z               "line": 156
2026-06-02T10:47:23.2047193Z             },
2026-06-02T10:47:23.2047612Z             {
2026-06-02T10:47:23.2047945Z               "path": "crates/spt-proto/src/payload.rs",
2026-06-02T10:47:23.2048324Z               "line": 164
2026-06-02T10:47:23.2048604Z             },
2026-06-02T10:47:23.2048855Z             {
2026-06-02T10:47:23.2049175Z               "path": "crates/spt-proto/src/payload.rs",
2026-06-02T10:47:23.2049539Z               "line": 177
2026-06-02T10:47:23.2049820Z             },
2026-06-02T10:47:23.2050067Z             {
2026-06-02T10:47:23.2050382Z               "path": "crates/spt-proto/src/payload.rs",
2026-06-02T10:47:23.2050740Z               "line": 197
2026-06-02T10:47:23.2051017Z             },
2026-06-02T10:47:23.2051261Z             {
2026-06-02T10:47:23.2051567Z               "path": "crates/spt-proto/src/payload.rs",
2026-06-02T10:47:23.2051914Z               "line": 213
2026-06-02T10:47:23.2052178Z             },
2026-06-02T10:47:23.2052422Z             {
2026-06-02T10:47:23.2052727Z               "path": "crates/spt-proto/src/payload.rs",
2026-06-02T10:47:23.2053062Z               "line": 227
2026-06-02T10:47:23.2053327Z             }
2026-06-02T10:47:23.2053566Z           ]
2026-06-02T10:47:23.2053808Z         }
2026-06-02T10:47:23.2054044Z       }
2026-06-02T10:47:23.2054274Z     },
2026-06-02T10:47:23.2054506Z     {
2026-06-02T10:47:23.2054967Z       "id": "REQ-EP-4",
2026-06-02T10:47:23.2055355Z       "title": "PresenceChannel broker endpoint (seam day-one)",
2026-06-02T10:47:23.2055870Z       "requiredStages": [],
2026-06-02T10:47:23.2056166Z       "stages": {
2026-06-02T10:47:23.2056427Z         "doc": {
2026-06-02T10:47:23.2056700Z           "complete": false,
2026-06-02T10:47:23.2056996Z           "evidence": []
2026-06-02T10:47:23.2057265Z         },
2026-06-02T10:47:23.2057624Z         "impl": {
2026-06-02T10:47:23.2057904Z           "complete": false,
2026-06-02T10:47:23.2058198Z           "evidence": []
2026-06-02T10:47:23.2058465Z         },
2026-06-02T10:47:23.2058704Z         "int": {
2026-06-02T10:47:23.2058969Z           "complete": false,
2026-06-02T10:47:23.2059257Z           "evidence": []
2026-06-02T10:47:23.2059520Z         },
2026-06-02T10:47:23.2059757Z         "unit": {
2026-06-02T10:47:23.2060019Z           "complete": false,
2026-06-02T10:47:23.2060310Z           "evidence": []
2026-06-02T10:47:23.2060583Z         }
2026-06-02T10:47:23.2060819Z       }
2026-06-02T10:47:23.2061046Z     },
2026-06-02T10:47:23.2061289Z     {
2026-06-02T10:47:23.2061539Z       "id": "REQ-FRONT-1",
2026-06-02T10:47:23.2061948Z       "title": "Day-one launcher/manager frontend (list/launch/attach/init)",
2026-06-02T10:47:23.2062380Z       "requiredStages": [],
2026-06-02T10:47:23.2062692Z       "stages": {
2026-06-02T10:47:23.2062956Z         "doc": {
2026-06-02T10:47:23.2063215Z           "complete": false,
2026-06-02T10:47:23.2063502Z           "evidence": []
2026-06-02T10:47:23.2063767Z         },
2026-06-02T10:47:23.2064004Z         "impl": {
2026-06-02T10:47:23.2064262Z           "complete": false,
2026-06-02T10:47:23.2064546Z           "evidence": []
2026-06-02T10:47:23.2064813Z         },
2026-06-02T10:47:23.2065051Z         "int": {
2026-06-02T10:47:23.2065313Z           "complete": false,
2026-06-02T10:47:23.2065595Z           "evidence": []
2026-06-02T10:47:23.2065856Z         },
2026-06-02T10:47:23.2066098Z         "unit": {
2026-06-02T10:47:23.2066358Z           "complete": false,
2026-06-02T10:47:23.2066642Z           "evidence": []
2026-06-02T10:47:23.2066906Z         }
2026-06-02T10:47:23.2067141Z       }
2026-06-02T10:47:23.2067591Z     },
2026-06-02T10:47:23.2067823Z     {
2026-06-02T10:47:23.2068111Z       "id": "REQ-HAZARD-CASCADE-WIPE-GUARD",
2026-06-02T10:47:23.2068569Z       "title": "No hard-delete of a parent hosting non-empty children (6.3)",
2026-06-02T10:47:23.2069002Z       "requiredStages": [
2026-06-02T10:47:23.2069280Z         "impl",
2026-06-02T10:47:23.2069532Z         "unit"
2026-06-02T10:47:23.2069775Z       ],
2026-06-02T10:47:23.2070012Z       "stages": {
2026-06-02T10:47:23.2070270Z         "doc": {
2026-06-02T10:47:23.2070527Z           "complete": false,
2026-06-02T10:47:23.2070818Z           "evidence": []
2026-06-02T10:47:23.2071086Z         },
2026-06-02T10:47:23.2071324Z         "impl": {
2026-06-02T10:47:23.2071577Z           "complete": true,
2026-06-02T10:47:23.2071866Z           "evidence": [
2026-06-02T10:47:23.2072134Z             {
2026-06-02T10:47:23.2072444Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-02T10:47:23.2072805Z               "line": 60
2026-06-02T10:47:23.2073067Z             },
2026-06-02T10:47:23.2073313Z             {
2026-06-02T10:47:23.2073609Z               "path": "crates/spt/src/api/worker.rs",
2026-06-02T10:47:23.2073947Z               "line": 18
2026-06-02T10:47:23.2074209Z             },
2026-06-02T10:47:23.2074446Z             {
2026-06-02T10:47:23.2074730Z               "path": "crates/spt/src/api/worker.rs",
2026-06-02T10:47:23.2075072Z               "line": 94
2026-06-02T10:47:23.2075333Z             }
2026-06-02T10:47:23.2075570Z           ]
2026-06-02T10:47:23.2075805Z         },
2026-06-02T10:47:23.2076043Z         "int": {
2026-06-02T10:47:23.2076310Z           "complete": false,
2026-06-02T10:47:23.2076592Z           "evidence": []
2026-06-02T10:47:23.2076855Z         },
2026-06-02T10:47:23.2077088Z         "unit": {
2026-06-02T10:47:23.2077620Z           "complete": true,
2026-06-02T10:47:23.2077906Z           "evidence": [
2026-06-02T10:47:23.2078297Z             {
2026-06-02T10:47:23.2078587Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-02T10:47:23.2078937Z               "line": 265
2026-06-02T10:47:23.2079207Z             },
2026-06-02T10:47:23.2079446Z             {
2026-06-02T10:47:23.2079731Z               "path": "crates/spt/src/api/worker.rs",
2026-06-02T10:47:23.2080075Z               "line": 152
2026-06-02T10:47:23.2080343Z             },
2026-06-02T10:47:23.2080581Z             {
2026-06-02T10:47:23.2080859Z               "path": "crates/spt/src/api/worker.rs",
2026-06-02T10:47:23.2081189Z               "line": 188
2026-06-02T10:47:23.2081451Z             }
2026-06-02T10:47:23.2081690Z           ]
2026-06-02T10:47:23.2081926Z         }
2026-06-02T10:47:23.2082163Z       }
2026-06-02T10:47:23.2082403Z     },
2026-06-02T10:47:23.2082629Z     {
2026-06-02T10:47:23.2082890Z       "id": "REQ-HAZARD-CONPTY-DSR",
2026-06-02T10:47:23.2083405Z       "title": "ConPTY reader must auto-answer DSR (ESC[6n) or all child output stalls (5.5)",
2026-06-02T10:47:23.2083905Z       "requiredStages": [
2026-06-02T10:47:23.2084183Z         "impl",
2026-06-02T10:47:23.2084432Z         "unit"
2026-06-02T10:47:23.2084673Z       ],
2026-06-02T10:47:23.2084921Z       "stages": {
2026-06-02T10:47:23.2085175Z         "doc": {
2026-06-02T10:47:23.2085436Z           "complete": false,
2026-06-02T10:47:23.2085725Z           "evidence": []
2026-06-02T10:47:23.2085988Z         },
2026-06-02T10:47:23.2086228Z         "impl": {
2026-06-02T10:47:23.2086487Z           "complete": true,
2026-06-02T10:47:23.2086774Z           "evidence": [
2026-06-02T10:47:23.2087036Z             {
2026-06-02T10:47:23.2087587Z               "path": "crates/spt-term/src/reader.rs",
2026-06-02T10:47:23.2088009Z               "line": 164
2026-06-02T10:47:23.2088287Z             }
2026-06-02T10:47:23.2088541Z           ]
2026-06-02T10:47:23.2088778Z         },
2026-06-02T10:47:23.2089029Z         "int": {
2026-06-02T10:47:23.2089299Z           "complete": true,
2026-06-02T10:47:23.2089597Z           "evidence": [
2026-06-02T10:47:23.2089868Z             {
2026-06-02T10:47:23.2090168Z               "path": "crates/spt-term/tests/dsr.rs",
2026-06-02T10:47:23.2090514Z               "line": 44
2026-06-02T10:47:23.2090784Z             },
2026-06-02T10:47:23.2091027Z             {
2026-06-02T10:47:23.2091309Z               "path": "crates/spt-term/tests/dsr.rs",
2026-06-02T10:47:23.2091646Z               "line": 66
2026-06-02T10:47:23.2091913Z             }
2026-06-02T10:47:23.2092153Z           ]
2026-06-02T10:47:23.2092401Z         },
2026-06-02T10:47:23.2092640Z         "unit": {
2026-06-02T10:47:23.2092902Z           "complete": true,
2026-06-02T10:47:23.2093187Z           "evidence": [
2026-06-02T10:47:23.2093448Z             {
2026-06-02T10:47:23.2093746Z               "path": "crates/spt-term/src/reader.rs",
2026-06-02T10:47:23.2094089Z               "line": 181
2026-06-02T10:47:23.2094372Z             },
2026-06-02T10:47:23.2094615Z             {
2026-06-02T10:47:23.2094924Z               "path": "crates/spt-term/src/reader.rs",
2026-06-02T10:47:23.2095256Z               "line": 233
2026-06-02T10:47:23.2095521Z             },
2026-06-02T10:47:23.2095761Z             {
2026-06-02T10:47:23.2096042Z               "path": "crates/spt-term/src/reader.rs",
2026-06-02T10:47:23.2096376Z               "line": 261
2026-06-02T10:47:23.2096649Z             }
2026-06-02T10:47:23.2096886Z           ]
2026-06-02T10:47:23.2097122Z         }
2026-06-02T10:47:23.2097462Z       }
2026-06-02T10:47:23.2097697Z     },
2026-06-02T10:47:23.2097931Z     {
2026-06-02T10:47:23.2098225Z       "id": "REQ-HAZARD-DAEMON-HOSTED-LIVENESS",
2026-06-02T10:47:23.2099085Z       "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)",
2026-06-02T10:47:23.2099826Z       "requiredStages": [],
2026-06-02T10:47:23.2100263Z       "stages": {
2026-06-02T10:47:23.2100520Z         "doc": {
2026-06-02T10:47:23.2100906Z           "complete": false,
2026-06-02T10:47:23.2101202Z           "evidence": []
2026-06-02T10:47:23.2101483Z         },
2026-06-02T10:47:23.2101723Z         "impl": {
2026-06-02T10:47:23.2101985Z           "complete": false,
2026-06-02T10:47:23.2102273Z           "evidence": []
2026-06-02T10:47:23.2102543Z         },
2026-06-02T10:47:23.2102776Z         "int": {
2026-06-02T10:47:23.2103034Z           "complete": false,
2026-06-02T10:47:23.2103323Z           "evidence": []
2026-06-02T10:47:23.2103583Z         },
2026-06-02T10:47:23.2103820Z         "unit": {
2026-06-02T10:47:23.2104085Z           "complete": false,
2026-06-02T10:47:23.2104364Z           "evidence": []
2026-06-02T10:47:23.2104632Z         }
2026-06-02T10:47:23.2104860Z       }
2026-06-02T10:47:23.2105091Z     },
2026-06-02T10:47:23.2105322Z     {
2026-06-02T10:47:23.2105632Z       "id": "REQ-HAZARD-DEFERRED-DRAIN",
2026-06-02T10:47:23.2106097Z       "title": "Deferred spool rows excluded from the event-stream drain (1.4)",
2026-06-02T10:47:23.2106547Z       "requiredStages": [
2026-06-02T10:47:23.2106822Z         "impl",
2026-06-02T10:47:23.2107071Z         "unit"
2026-06-02T10:47:23.2107431Z       ],
2026-06-02T10:47:23.2107681Z       "stages": {
2026-06-02T10:47:23.2107938Z         "doc": {
2026-06-02T10:47:23.2108204Z           "complete": false,
2026-06-02T10:47:23.2108499Z           "evidence": []
2026-06-02T10:47:23.2108762Z         },
2026-06-02T10:47:23.2108994Z         "impl": {
2026-06-02T10:47:23.2109258Z           "complete": true,
2026-06-02T10:47:23.2109552Z           "evidence": [
2026-06-02T10:47:23.2109818Z             {
2026-06-02T10:47:23.2110110Z               "path": "crates/spt-store/src/spool.rs",
2026-06-02T10:47:23.2110452Z               "line": 40
2026-06-02T10:47:23.2110718Z             },
2026-06-02T10:47:23.2110956Z             {
2026-06-02T10:47:23.2111244Z               "path": "crates/spt-store/src/spool.rs",
2026-06-02T10:47:23.2111588Z               "line": 88
2026-06-02T10:47:23.2111852Z             },
2026-06-02T10:47:23.2112108Z             {
2026-06-02T10:47:23.2112391Z               "path": "crates/spt-store/src/spool.rs",
2026-06-02T10:47:23.2112726Z               "line": 133
2026-06-02T10:47:23.2112993Z             },
2026-06-02T10:47:23.2113232Z             {
2026-06-02T10:47:23.2113514Z               "path": "crates/spt-store/src/spool.rs",
2026-06-02T10:47:23.2113848Z               "line": 215
2026-06-02T10:47:23.2114112Z             }
2026-06-02T10:47:23.2114354Z           ]
2026-06-02T10:47:23.2114586Z         },
2026-06-02T10:47:23.2114820Z         "int": {
2026-06-02T10:47:23.2115082Z           "complete": false,
2026-06-02T10:47:23.2115366Z           "evidence": []
2026-06-02T10:47:23.2115632Z         },
2026-06-02T10:47:23.2115863Z         "unit": {
2026-06-02T10:47:23.2116121Z           "complete": true,
2026-06-02T10:47:23.2116401Z           "evidence": [
2026-06-02T10:47:23.2116673Z             {
2026-06-02T10:47:23.2116959Z               "path": "crates/spt-store/src/spool.rs",
2026-06-02T10:47:23.2117299Z               "line": 250
2026-06-02T10:47:23.2117996Z             },
2026-06-02T10:47:23.2118243Z             {
2026-06-02T10:47:23.2118529Z               "path": "crates/spt-store/src/spool.rs",
2026-06-02T10:47:23.2118860Z               "line": 296
2026-06-02T10:47:23.2119120Z             },
2026-06-02T10:47:23.2119366Z             {
2026-06-02T10:47:23.2119645Z               "path": "crates/spt-store/src/spool.rs",
2026-06-02T10:47:23.2119974Z               "line": 337
2026-06-02T10:47:23.2120237Z             },
2026-06-02T10:47:23.2120477Z             {
2026-06-02T10:47:23.2120753Z               "path": "crates/spt-store/src/spool.rs",
2026-06-02T10:47:23.2121082Z               "line": 356
2026-06-02T10:47:23.2121336Z             }
2026-06-02T10:47:23.2121570Z           ]
2026-06-02T10:47:23.2121810Z         }
2026-06-02T10:47:23.2122045Z       }
2026-06-02T10:47:23.2122271Z     },
2026-06-02T10:47:23.2122659Z     {
2026-06-02T10:47:23.2122952Z       "id": "REQ-HAZARD-DEFERRED-SURVIVE-DRAIN",
2026-06-02T10:47:23.2123522Z       "title": "Deferred rows survive poll drain (4.4)",
2026-06-02T10:47:23.2123880Z       "requiredStages": [
2026-06-02T10:47:23.2124148Z         "impl",
2026-06-02T10:47:23.2124262Z         "unit"
2026-06-02T10:47:23.2124372Z       ],
2026-06-02T10:47:23.2124481Z       "stages": {
2026-06-02T10:47:23.2124596Z         "doc": {
2026-06-02T10:47:23.2124718Z           "complete": false,
2026-06-02T10:47:23.2124842Z           "evidence": []
2026-06-02T10:47:23.2124944Z         },
2026-06-02T10:47:23.2125061Z         "impl": {
2026-06-02T10:47:23.2125190Z           "complete": true,
2026-06-02T10:47:23.2125307Z           "evidence": [
2026-06-02T10:47:23.2125425Z             {
2026-06-02T10:47:23.2125577Z               "path": "crates/spt-store/src/spool.rs",
2026-06-02T10:47:23.2125700Z               "line": 101
2026-06-02T10:47:23.2125806Z             },
2026-06-02T10:47:23.2125926Z             {
2026-06-02T10:47:23.2126082Z               "path": "crates/spt-store/src/spool.rs",
2026-06-02T10:47:23.2126206Z               "line": 126
2026-06-02T10:47:23.2126318Z             }
2026-06-02T10:47:23.2126422Z           ]
2026-06-02T10:47:23.2126533Z         },
2026-06-02T10:47:23.2126638Z         "int": {
2026-06-02T10:47:23.2126765Z           "complete": false,
2026-06-02T10:47:23.2126887Z           "evidence": []
2026-06-02T10:47:23.2126993Z         },
2026-06-02T10:47:23.2127105Z         "unit": {
2026-06-02T10:47:23.2127221Z           "complete": true,
2026-06-02T10:47:23.2127472Z           "evidence": [
2026-06-02T10:47:23.2127583Z             {
2026-06-02T10:47:23.2127741Z               "path": "crates/spt-store/src/spool.rs",
2026-06-02T10:47:23.2127862Z               "line": 271
2026-06-02T10:47:23.2127969Z             },
2026-06-02T10:47:23.2128081Z             {
2026-06-02T10:47:23.2128229Z               "path": "crates/spt-store/src/spool.rs",
2026-06-02T10:47:23.2128361Z               "line": 315
2026-06-02T10:47:23.2128467Z             }
2026-06-02T10:47:23.2128580Z           ]
2026-06-02T10:47:23.2128694Z         }
2026-06-02T10:47:23.2128797Z       }
2026-06-02T10:47:23.2128906Z     },
2026-06-02T10:47:23.2129007Z     {
2026-06-02T10:47:23.2129182Z       "id": "REQ-HAZARD-DIRECT-WRITE-PRECEDENCE",
2026-06-02T10:47:23.2129482Z       "title": "Direct-write precedence marker (with node id) guards stale overwrite (6.5)",
2026-06-02T10:47:23.2129612Z       "requiredStages": [
2026-06-02T10:47:23.2129726Z         "impl",
2026-06-02T10:47:23.2129833Z         "unit"
2026-06-02T10:47:23.2129941Z       ],
2026-06-02T10:47:23.2130050Z       "stages": {
2026-06-02T10:47:23.2130161Z         "doc": {
2026-06-02T10:47:23.2130279Z           "complete": false,
2026-06-02T10:47:23.2130402Z           "evidence": []
2026-06-02T10:47:23.2130515Z         },
2026-06-02T10:47:23.2130623Z         "impl": {
2026-06-02T10:47:23.2130751Z           "complete": true,
2026-06-02T10:47:23.2130872Z           "evidence": [
2026-06-02T10:47:23.2130981Z             {
2026-06-02T10:47:23.2131141Z               "path": "crates/spt-live/src/context.rs",
2026-06-02T10:47:23.2131274Z               "line": 21
2026-06-02T10:47:23.2131387Z             },
2026-06-02T10:47:23.2131494Z             {
2026-06-02T10:47:23.2131649Z               "path": "crates/spt-live/src/context.rs",
2026-06-02T10:47:23.2131762Z               "line": 152
2026-06-02T10:47:23.2131870Z             }
2026-06-02T10:47:23.2131976Z           ]
2026-06-02T10:47:23.2132090Z         },
2026-06-02T10:47:23.2132202Z         "int": {
2026-06-02T10:47:23.2132321Z           "complete": false,
2026-06-02T10:47:23.2132446Z           "evidence": []
2026-06-02T10:47:23.2132554Z         },
2026-06-02T10:47:23.2132667Z         "unit": {
2026-06-02T10:47:23.2132786Z           "complete": true,
2026-06-02T10:47:23.2132904Z           "evidence": [
2026-06-02T10:47:23.2133014Z             {
2026-06-02T10:47:23.2133305Z               "path": "crates/spt-live/src/context.rs",
2026-06-02T10:47:23.2133429Z               "line": 169
2026-06-02T10:47:23.2133540Z             },
2026-06-02T10:47:23.2133765Z             {
2026-06-02T10:47:23.2133919Z               "path": "crates/spt-live/src/context.rs",
2026-06-02T10:47:23.2134042Z               "line": 176
2026-06-02T10:47:23.2134152Z             },
2026-06-02T10:47:23.2134257Z             {
2026-06-02T10:47:23.2134415Z               "path": "crates/spt-live/src/context.rs",
2026-06-02T10:47:23.2134531Z               "line": 185
2026-06-02T10:47:23.2134642Z             },
2026-06-02T10:47:23.2134745Z             {
2026-06-02T10:47:23.2134901Z               "path": "crates/spt-live/src/context.rs",
2026-06-02T10:47:23.2135025Z               "line": 194
2026-06-02T10:47:23.2135127Z             },
2026-06-02T10:47:23.2135239Z             {
2026-06-02T10:47:23.2135390Z               "path": "crates/spt-live/src/context.rs",
2026-06-02T10:47:23.2135511Z               "line": 203
2026-06-02T10:47:23.2135617Z             },
2026-06-02T10:47:23.2135740Z             {
2026-06-02T10:47:23.2135897Z               "path": "crates/spt-live/src/context.rs",
2026-06-02T10:47:23.2136023Z               "line": 212
2026-06-02T10:47:23.2136136Z             },
2026-06-02T10:47:23.2136242Z             {
2026-06-02T10:47:23.2136399Z               "path": "crates/spt-live/src/ingest.rs",
2026-06-02T10:47:23.2136516Z               "line": 132
2026-06-02T10:47:23.2136630Z             },
2026-06-02T10:47:23.2136740Z             {
2026-06-02T10:47:23.2136889Z               "path": "crates/spt-live/src/signoff.rs",
2026-06-02T10:47:23.2137010Z               "line": 211
2026-06-02T10:47:23.2137116Z             }
2026-06-02T10:47:23.2137230Z           ]
2026-06-02T10:47:23.2137445Z         }
2026-06-02T10:47:23.2137559Z       }
2026-06-02T10:47:23.2137672Z     },
2026-06-02T10:47:23.2137776Z     {
2026-06-02T10:47:23.2137953Z       "id": "REQ-HAZARD-DROP-FILE-SINGLE-WRITER",
2026-06-02T10:47:23.2138175Z       "title": "Drop files are daemon-owned single-writer (6.4)",
2026-06-02T10:47:23.2138303Z       "requiredStages": [
2026-06-02T10:47:23.2138410Z         "impl",
2026-06-02T10:47:23.2138533Z         "unit"
2026-06-02T10:47:23.2138645Z       ],
2026-06-02T10:47:23.2138756Z       "stages": {
2026-06-02T10:47:23.2138870Z         "doc": {
2026-06-02T10:47:23.2138986Z           "complete": false,
2026-06-02T10:47:23.2139111Z           "evidence": []
2026-06-02T10:47:23.2139217Z         },
2026-06-02T10:47:23.2139334Z         "impl": {
2026-06-02T10:47:23.2139468Z           "complete": true,
2026-06-02T10:47:23.2139585Z           "evidence": [
2026-06-02T10:47:23.2139698Z             {
2026-06-02T10:47:23.2139854Z               "path": "crates/spt-live/src/echo.rs",
2026-06-02T10:47:23.2139978Z               "line": 25
2026-06-02T10:47:23.2140083Z             },
2026-06-02T10:47:23.2140196Z             {
2026-06-02T10:47:23.2140357Z               "path": "crates/spt-live/src/ingest.rs",
2026-06-02T10:47:23.2140472Z               "line": 13
2026-06-02T10:47:23.2140592Z             },
2026-06-02T10:47:23.2140698Z             {
2026-06-02T10:47:23.2140858Z               "path": "crates/spt-live/src/ingest.rs",
2026-06-02T10:47:23.2140986Z               "line": 78
2026-06-02T10:47:23.2141092Z             }
2026-06-02T10:47:23.2141203Z           ]
2026-06-02T10:47:23.2141309Z         },
2026-06-02T10:47:23.2141427Z         "int": {
2026-06-02T10:47:23.2141551Z           "complete": false,
2026-06-02T10:47:23.2141674Z           "evidence": []
2026-06-02T10:47:23.2141780Z         },
2026-06-02T10:47:23.2141898Z         "unit": {
2026-06-02T10:47:23.2142022Z           "complete": true,
2026-06-02T10:47:23.2142138Z           "evidence": [
2026-06-02T10:47:23.2142250Z             {
2026-06-02T10:47:23.2142401Z               "path": "crates/spt-live/src/echo.rs",
2026-06-02T10:47:23.2142522Z               "line": 180
2026-06-02T10:47:23.2142636Z             },
2026-06-02T10:47:23.2142741Z             {
2026-06-02T10:47:23.2142894Z               "path": "crates/spt-live/src/echo.rs",
2026-06-02T10:47:23.2143152Z               "line": 205
2026-06-02T10:47:23.2143263Z             },
2026-06-02T10:47:23.2143482Z             {
2026-06-02T10:47:23.2143641Z               "path": "crates/spt-live/src/ingest.rs",
2026-06-02T10:47:23.2143760Z               "line": 96
2026-06-02T10:47:23.2143866Z             }
2026-06-02T10:47:23.2143983Z           ]
2026-06-02T10:47:23.2144085Z         }
2026-06-02T10:47:23.2144197Z       }
2026-06-02T10:47:23.2144300Z     },
2026-06-02T10:47:23.2144409Z     {
2026-06-02T10:47:23.2144554Z       "id": "REQ-HAZARD-EBUSY-RENAME",
2026-06-02T10:47:23.2144798Z       "title": "tmp-write + atomic-rename + retry on Windows EBUSY (5.2)",
2026-06-02T10:47:23.2144930Z       "requiredStages": [
2026-06-02T10:47:23.2145041Z         "impl",
2026-06-02T10:47:23.2145157Z         "unit"
2026-06-02T10:47:23.2145260Z       ],
2026-06-02T10:47:23.2145379Z       "stages": {
2026-06-02T10:47:23.2145495Z         "doc": {
2026-06-02T10:47:23.2145617Z           "complete": false,
2026-06-02T10:47:23.2145748Z           "evidence": []
2026-06-02T10:47:23.2145852Z         },
2026-06-02T10:47:23.2145974Z         "impl": {
2026-06-02T10:47:23.2146091Z           "complete": true,
2026-06-02T10:47:23.2146216Z           "evidence": [
2026-06-02T10:47:23.2146322Z             {
2026-06-02T10:47:23.2146486Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-02T10:47:23.2146604Z               "line": 48
2026-06-02T10:47:23.2146710Z             },
2026-06-02T10:47:23.2146826Z             {
2026-06-02T10:47:23.2146980Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-02T10:47:23.2147117Z               "line": 55
2026-06-02T10:47:23.2147229Z             },
2026-06-02T10:47:23.2147465Z             {
2026-06-02T10:47:23.2147637Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-02T10:47:23.2147750Z               "line": 74
2026-06-02T10:47:23.2147865Z             },
2026-06-02T10:47:23.2147970Z             {
2026-06-02T10:47:23.2148142Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-02T10:47:23.2148266Z               "line": 91
2026-06-02T10:47:23.2148383Z             }
2026-06-02T10:47:23.2148495Z           ]
2026-06-02T10:47:23.2148598Z         },
2026-06-02T10:47:23.2148714Z         "int": {
2026-06-02T10:47:23.2148834Z           "complete": false,
2026-06-02T10:47:23.2148958Z           "evidence": []
2026-06-02T10:47:23.2149067Z         },
2026-06-02T10:47:23.2149176Z         "unit": {
2026-06-02T10:47:23.2149300Z           "complete": true,
2026-06-02T10:47:23.2149415Z           "evidence": [
2026-06-02T10:47:23.2149527Z             {
2026-06-02T10:47:23.2149684Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-02T10:47:23.2149807Z               "line": 149
2026-06-02T10:47:23.2149921Z             },
2026-06-02T10:47:23.2150025Z             {
2026-06-02T10:47:23.2150181Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-02T10:47:23.2150294Z               "line": 163
2026-06-02T10:47:23.2150409Z             },
2026-06-02T10:47:23.2150519Z             {
2026-06-02T10:47:23.2150677Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-02T10:47:23.2150803Z               "line": 173
2026-06-02T10:47:23.2150907Z             },
2026-06-02T10:47:23.2151018Z             {
2026-06-02T10:47:23.2151168Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-02T10:47:23.2151292Z               "line": 191
2026-06-02T10:47:23.2151397Z             },
2026-06-02T10:47:23.2151512Z             {
2026-06-02T10:47:23.2151667Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-02T10:47:23.2151781Z               "line": 204
2026-06-02T10:47:23.2151896Z             }
2026-06-02T10:47:23.2152001Z           ]
2026-06-02T10:47:23.2152112Z         }
2026-06-02T10:47:23.2152218Z       }
2026-06-02T10:47:23.2152329Z     },
2026-06-02T10:47:23.2152439Z     {
2026-06-02T10:47:23.2152596Z       "id": "REQ-HAZARD-ECHO-BEFORE-SIGNOFF",
2026-06-02T10:47:23.2153010Z       "title": "Echo-commune fires before INIT_SIGNOFF on orphan teardown (3.3)",
2026-06-02T10:47:23.2153135Z       "requiredStages": [
2026-06-02T10:47:23.2153368Z         "impl",
2026-06-02T10:47:23.2153477Z         "unit"
2026-06-02T10:47:23.2153589Z       ],
2026-06-02T10:47:23.2153705Z       "stages": {
2026-06-02T10:47:23.2153813Z         "doc": {
2026-06-02T10:47:23.2153939Z           "complete": false,
2026-06-02T10:47:23.2154055Z           "evidence": []
2026-06-02T10:47:23.2154167Z         },
2026-06-02T10:47:23.2154276Z         "impl": {
2026-06-02T10:47:23.2154402Z           "complete": true,
2026-06-02T10:47:23.2154522Z           "evidence": [
2026-06-02T10:47:23.2154626Z             {
2026-06-02T10:47:23.2154785Z               "path": "crates/spt-live/src/signoff.rs",
2026-06-02T10:47:23.2154901Z               "line": 26
2026-06-02T10:47:23.2155013Z             }
2026-06-02T10:47:23.2155117Z           ]
2026-06-02T10:47:23.2155230Z         },
2026-06-02T10:47:23.2155344Z         "int": {
2026-06-02T10:47:23.2155463Z           "complete": false,
2026-06-02T10:47:23.2155592Z           "evidence": []
2026-06-02T10:47:23.2155697Z         },
2026-06-02T10:47:23.2155820Z         "unit": {
2026-06-02T10:47:23.2155941Z           "complete": true,
2026-06-02T10:47:23.2156064Z           "evidence": [
2026-06-02T10:47:23.2156175Z             {
2026-06-02T10:47:23.2156326Z               "path": "crates/spt-live/src/signoff.rs",
2026-06-02T10:47:23.2156452Z               "line": 138
2026-06-02T10:47:23.2156559Z             },
2026-06-02T10:47:23.2156673Z             {
2026-06-02T10:47:23.2156825Z               "path": "crates/spt-live/src/signoff.rs",
2026-06-02T10:47:23.2156950Z               "line": 181
2026-06-02T10:47:23.2157062Z             }
2026-06-02T10:47:23.2157169Z           ]
2026-06-02T10:47:23.2157283Z         }
2026-06-02T10:47:23.2157505Z       }
2026-06-02T10:47:23.2157617Z     },
2026-06-02T10:47:23.2157720Z     {
2026-06-02T10:47:23.2157893Z       "id": "REQ-HAZARD-ENVELOPE-DECODE-ORDER",
2026-06-02T10:47:23.2158123Z       "title": "Envelope decode order, ampersand decoded last (4.1)",
2026-06-02T10:47:23.2158245Z       "requiredStages": [
2026-06-02T10:47:23.2158366Z         "impl",
2026-06-02T10:47:23.2158472Z         "unit"
2026-06-02T10:47:23.2158583Z       ],
2026-06-02T10:47:23.2158693Z       "stages": {
2026-06-02T10:47:23.2158808Z         "doc": {
2026-06-02T10:47:23.2158935Z           "complete": false,
2026-06-02T10:47:23.2159048Z           "evidence": []
2026-06-02T10:47:23.2159157Z         },
2026-06-02T10:47:23.2159268Z         "impl": {
2026-06-02T10:47:23.2159390Z           "complete": true,
2026-06-02T10:47:23.2159503Z           "evidence": [
2026-06-02T10:47:23.2159615Z             {
2026-06-02T10:47:23.2159787Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-02T10:47:23.2159900Z               "line": 36
2026-06-02T10:47:23.2160013Z             },
2026-06-02T10:47:23.2160119Z             {
2026-06-02T10:47:23.2160287Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-02T10:47:23.2160406Z               "line": 68
2026-06-02T10:47:23.2160520Z             }
2026-06-02T10:47:23.2160631Z           ]
2026-06-02T10:47:23.2160744Z         },
2026-06-02T10:47:23.2160865Z         "int": {
2026-06-02T10:47:23.2160990Z           "complete": false,
2026-06-02T10:47:23.2161111Z           "evidence": []
2026-06-02T10:47:23.2161215Z         },
2026-06-02T10:47:23.2161330Z         "unit": {
2026-06-02T10:47:23.2161453Z           "complete": true,
2026-06-02T10:47:23.2161567Z           "evidence": [
2026-06-02T10:47:23.2161681Z             {
2026-06-02T10:47:23.2161839Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-02T10:47:23.2161960Z               "line": 143
2026-06-02T10:47:23.2162065Z             },
2026-06-02T10:47:23.2162180Z             {
2026-06-02T10:47:23.2162345Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-02T10:47:23.2162461Z               "line": 160
2026-06-02T10:47:23.2162573Z             },
2026-06-02T10:47:23.2162677Z             {
2026-06-02T10:47:23.2162982Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-02T10:47:23.2163101Z               "line": 168
2026-06-02T10:47:23.2163329Z             }
2026-06-02T10:47:23.2163441Z           ]
2026-06-02T10:47:23.2163546Z         }
2026-06-02T10:47:23.2163659Z       }
2026-06-02T10:47:23.2163762Z     },
2026-06-02T10:47:23.2163872Z     {
2026-06-02T10:47:23.2164043Z       "id": "REQ-HAZARD-ENVELOPE-PARSER-SAFE",
2026-06-02T10:47:23.2164297Z       "title": "Two-slice envelope parser is panic-free and tolerant (4.2)",
2026-06-02T10:47:23.2164424Z       "requiredStages": [
2026-06-02T10:47:23.2164534Z         "impl",
2026-06-02T10:47:23.2164647Z         "unit"
2026-06-02T10:47:23.2164749Z       ],
2026-06-02T10:47:23.2164869Z       "stages": {
2026-06-02T10:47:23.2164977Z         "doc": {
2026-06-02T10:47:23.2165108Z           "complete": false,
2026-06-02T10:47:23.2165234Z           "evidence": []
2026-06-02T10:47:23.2165337Z         },
2026-06-02T10:47:23.2165456Z         "impl": {
2026-06-02T10:47:23.2165587Z           "complete": true,
2026-06-02T10:47:23.2165708Z           "evidence": [
2026-06-02T10:47:23.2165819Z             {
2026-06-02T10:47:23.2165997Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-02T10:47:23.2166120Z               "line": 107
2026-06-02T10:47:23.2166225Z             }
2026-06-02T10:47:23.2166336Z           ]
2026-06-02T10:47:23.2166439Z         },
2026-06-02T10:47:23.2166555Z         "int": {
2026-06-02T10:47:23.2166674Z           "complete": false,
2026-06-02T10:47:23.2166796Z           "evidence": []
2026-06-02T10:47:23.2166906Z         },
2026-06-02T10:47:23.2167014Z         "unit": {
2026-06-02T10:47:23.2167137Z           "complete": true,
2026-06-02T10:47:23.2167251Z           "evidence": [
2026-06-02T10:47:23.2167481Z             {
2026-06-02T10:47:23.2167647Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-02T10:47:23.2167772Z               "line": 184
2026-06-02T10:47:23.2167890Z             },
2026-06-02T10:47:23.2167995Z             {
2026-06-02T10:47:23.2168172Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-02T10:47:23.2168293Z               "line": 193
2026-06-02T10:47:23.2168406Z             },
2026-06-02T10:47:23.2168510Z             {
2026-06-02T10:47:23.2168676Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-02T10:47:23.2168799Z               "line": 201
2026-06-02T10:47:23.2168903Z             },
2026-06-02T10:47:23.2169013Z             {
2026-06-02T10:47:23.2169171Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-02T10:47:23.2169296Z               "line": 210
2026-06-02T10:47:23.2169401Z             },
2026-06-02T10:47:23.2169514Z             {
2026-06-02T10:47:23.2169675Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-02T10:47:23.2169786Z               "line": 219
2026-06-02T10:47:23.2169897Z             }
2026-06-02T10:47:23.2170002Z           ]
2026-06-02T10:47:23.2170112Z         }
2026-06-02T10:47:23.2170216Z       }
2026-06-02T10:47:23.2170329Z     },
2026-06-02T10:47:23.2170445Z     {
2026-06-02T10:47:23.2170600Z       "id": "REQ-HAZARD-EPHEMERAL-CLEANUP",
2026-06-02T10:47:23.2170832Z       "title": "Ephemeral perch cleanup on every ring exit path (3.1)",
2026-06-02T10:47:23.2170950Z       "requiredStages": [
2026-06-02T10:47:23.2171068Z         "impl",
2026-06-02T10:47:23.2171174Z         "unit"
2026-06-02T10:47:23.2171286Z       ],
2026-06-02T10:47:23.2171401Z       "stages": {
2026-06-02T10:47:23.2171509Z         "doc": {
2026-06-02T10:47:23.2171636Z           "complete": false,
2026-06-02T10:47:23.2171752Z           "evidence": []
2026-06-02T10:47:23.2171866Z         },
2026-06-02T10:47:23.2171975Z         "impl": {
2026-06-02T10:47:23.2172101Z           "complete": true,
2026-06-02T10:47:23.2172222Z           "evidence": [
2026-06-02T10:47:23.2172325Z             {
2026-06-02T10:47:23.2172486Z               "path": "crates/spt-msg/src/ring.rs",
2026-06-02T10:47:23.2172599Z               "line": 14
2026-06-02T10:47:23.2172715Z             },
2026-06-02T10:47:23.2172999Z             {
2026-06-02T10:47:23.2173162Z               "path": "crates/spt-msg/src/ring.rs",
2026-06-02T10:47:23.2173395Z               "line": 63
2026-06-02T10:47:23.2173501Z             }
2026-06-02T10:47:23.2173611Z           ]
2026-06-02T10:47:23.2173716Z         },
2026-06-02T10:47:23.2173831Z         "int": {
2026-06-02T10:47:23.2173953Z           "complete": false,
2026-06-02T10:47:23.2174079Z           "evidence": []
2026-06-02T10:47:23.2174190Z         },
2026-06-02T10:47:23.2174297Z         "unit": {
2026-06-02T10:47:23.2174423Z           "complete": true,
2026-06-02T10:47:23.2174538Z           "evidence": [
2026-06-02T10:47:23.2174650Z             {
2026-06-02T10:47:23.2174797Z               "path": "crates/spt-msg/src/ring.rs",
2026-06-02T10:47:23.2174922Z               "line": 161
2026-06-02T10:47:23.2175033Z             },
2026-06-02T10:47:23.2175136Z             {
2026-06-02T10:47:23.2175284Z               "path": "crates/spt-msg/src/ring.rs",
2026-06-02T10:47:23.2175404Z               "line": 198
2026-06-02T10:47:23.2175516Z             },
2026-06-02T10:47:23.2175622Z             {
2026-06-02T10:47:23.2175779Z               "path": "crates/spt-msg/src/ring.rs",
2026-06-02T10:47:23.2175901Z               "line": 214
2026-06-02T10:47:23.2176008Z             }
2026-06-02T10:47:23.2176118Z           ]
2026-06-02T10:47:23.2176221Z         }
2026-06-02T10:47:23.2176334Z       }
2026-06-02T10:47:23.2176437Z     },
2026-06-02T10:47:23.2176546Z     {
2026-06-02T10:47:23.2176707Z       "id": "REQ-HAZARD-EVENTPART-REASSEMBLY",
2026-06-02T10:47:23.2177001Z       "title": "EVENT-PART split/reassembly is byte-exact; orphan parts dropped silently",
2026-06-02T10:47:23.2177130Z       "requiredStages": [
2026-06-02T10:47:23.2177237Z         "impl",
2026-06-02T10:47:23.2177460Z         "unit"
2026-06-02T10:47:23.2177575Z       ],
2026-06-02T10:47:23.2177686Z       "stages": {
2026-06-02T10:47:23.2177802Z         "doc": {
2026-06-02T10:47:23.2177924Z           "complete": false,
2026-06-02T10:47:23.2178057Z           "evidence": []
2026-06-02T10:47:23.2178164Z         },
2026-06-02T10:47:23.2178280Z         "impl": {
2026-06-02T10:47:23.2178404Z           "complete": true,
2026-06-02T10:47:23.2178529Z           "evidence": [
2026-06-02T10:47:23.2178640Z             {
2026-06-02T10:47:23.2178801Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-02T10:47:23.2178923Z               "line": 76
2026-06-02T10:47:23.2179026Z             },
2026-06-02T10:47:23.2179136Z             {
2026-06-02T10:47:23.2179298Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-02T10:47:23.2179414Z               "line": 163
2026-06-02T10:47:23.2179527Z             },
2026-06-02T10:47:23.2179632Z             {
2026-06-02T10:47:23.2179790Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-02T10:47:23.2179906Z               "line": 229
2026-06-02T10:47:23.2180020Z             },
2026-06-02T10:47:23.2180133Z             {
2026-06-02T10:47:23.2180286Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-02T10:47:23.2180409Z               "line": 265
2026-06-02T10:47:23.2180541Z             }
2026-06-02T10:47:23.2180659Z           ]
2026-06-02T10:47:23.2180762Z         },
2026-06-02T10:47:23.2180883Z         "int": {
2026-06-02T10:47:23.2181014Z           "complete": false,
2026-06-02T10:47:23.2181131Z           "evidence": []
2026-06-02T10:47:23.2181244Z         },
2026-06-02T10:47:23.2181352Z         "unit": {
2026-06-02T10:47:23.2181476Z           "complete": true,
2026-06-02T10:47:23.2181594Z           "evidence": [
2026-06-02T10:47:23.2181709Z             {
2026-06-02T10:47:23.2181867Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-02T10:47:23.2181985Z               "line": 310
2026-06-02T10:47:23.2182099Z             },
2026-06-02T10:47:23.2182205Z             {
2026-06-02T10:47:23.2182362Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-02T10:47:23.2182478Z               "line": 318
2026-06-02T10:47:23.2182594Z             },
2026-06-02T10:47:23.2182863Z             {
2026-06-02T10:47:23.2183023Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-02T10:47:23.2183259Z               "line": 341
2026-06-02T10:47:23.2183366Z             },
2026-06-02T10:47:23.2183479Z             {
2026-06-02T10:47:23.2183638Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-02T10:47:23.2183761Z               "line": 378
2026-06-02T10:47:23.2183875Z             },
2026-06-02T10:47:23.2183979Z             {
2026-06-02T10:47:23.2184137Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-02T10:47:23.2184253Z               "line": 389
2026-06-02T10:47:23.2184367Z             },
2026-06-02T10:47:23.2184472Z             {
2026-06-02T10:47:23.2184631Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-02T10:47:23.2184750Z               "line": 401
2026-06-02T10:47:23.2184857Z             },
2026-06-02T10:47:23.2184970Z             {
2026-06-02T10:47:23.2185118Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-02T10:47:23.2185251Z               "line": 413
2026-06-02T10:47:23.2185357Z             }
2026-06-02T10:47:23.2185476Z           ]
2026-06-02T10:47:23.2185588Z         }
2026-06-02T10:47:23.2185692Z       }
2026-06-02T10:47:23.2185799Z     },
2026-06-02T10:47:23.2185902Z     {
2026-06-02T10:47:23.2186051Z       "id": "REQ-HAZARD-GEN-START-NOW",
2026-06-02T10:47:23.2186256Z       "title": "gen_start = now() on cold-start and handoff (2.4)",
2026-06-02T10:47:23.2186386Z       "requiredStages": [],
2026-06-02T10:47:23.2186502Z       "stages": {
2026-06-02T10:47:23.2186610Z         "doc": {
2026-06-02T10:47:23.2186741Z           "complete": false,
2026-06-02T10:47:23.2186856Z           "evidence": []
2026-06-02T10:47:23.2186970Z         },
2026-06-02T10:47:23.2187080Z         "impl": {
2026-06-02T10:47:23.2187208Z           "complete": false,
2026-06-02T10:47:23.2187448Z           "evidence": []
2026-06-02T10:47:23.2187553Z         },
2026-06-02T10:47:23.2187664Z         "int": {
2026-06-02T10:47:23.2187792Z           "complete": false,
2026-06-02T10:47:23.2187917Z           "evidence": []
2026-06-02T10:47:23.2188021Z         },
2026-06-02T10:47:23.2188144Z         "unit": {
2026-06-02T10:47:23.2188270Z           "complete": false,
2026-06-02T10:47:23.2188386Z           "evidence": []
2026-06-02T10:47:23.2188495Z         }
2026-06-02T10:47:23.2188600Z       }
2026-06-02T10:47:23.2188709Z     },
2026-06-02T10:47:23.2188812Z     {
2026-06-02T10:47:23.2188983Z       "id": "REQ-HAZARD-GRACE-BEFORE-SIGNOFF",
2026-06-02T10:47:23.2189251Z       "title": "Grace-period wait completes before composing INIT_SIGNOFF (1.1)",
2026-06-02T10:47:23.2189371Z       "requiredStages": [
2026-06-02T10:47:23.2189491Z         "impl",
2026-06-02T10:47:23.2189598Z         "unit"
2026-06-02T10:47:23.2189711Z       ],
2026-06-02T10:47:23.2189822Z       "stages": {
2026-06-02T10:47:23.2189937Z         "doc": {
2026-06-02T10:47:23.2190062Z           "complete": false,
2026-06-02T10:47:23.2190185Z           "evidence": []
2026-06-02T10:47:23.2190299Z         },
2026-06-02T10:47:23.2190417Z         "impl": {
2026-06-02T10:47:23.2190545Z           "complete": true,
2026-06-02T10:47:23.2190662Z           "evidence": [
2026-06-02T10:47:23.2190774Z             {
2026-06-02T10:47:23.2190938Z               "path": "crates/spt-live/src/signoff.rs",
2026-06-02T10:47:23.2191051Z               "line": 27
2026-06-02T10:47:23.2191163Z             }
2026-06-02T10:47:23.2191268Z           ]
2026-06-02T10:47:23.2191380Z         },
2026-06-02T10:47:23.2191490Z         "int": {
2026-06-02T10:47:23.2191623Z           "complete": false,
2026-06-02T10:47:23.2191742Z           "evidence": []
2026-06-02T10:47:23.2191843Z         },
2026-06-02T10:47:23.2191959Z         "unit": {
2026-06-02T10:47:23.2192080Z           "complete": true,
2026-06-02T10:47:23.2192199Z           "evidence": [
2026-06-02T10:47:23.2192303Z             {
2026-06-02T10:47:23.2192464Z               "path": "crates/spt-live/src/signoff.rs",
2026-06-02T10:47:23.2192583Z               "line": 163
2026-06-02T10:47:23.2192832Z             }
2026-06-02T10:47:23.2192947Z           ]
2026-06-02T10:47:23.2193053Z         }
2026-06-02T10:47:23.2193283Z       }
2026-06-02T10:47:23.2193386Z     },
2026-06-02T10:47:23.2193497Z     {
2026-06-02T10:47:23.2193666Z       "id": "REQ-HAZARD-HANDOFF-ARGV-COMPAT",
2026-06-02T10:47:23.2193897Z       "title": "Broker/brain IPC + handoff argv version-tolerant (2.3)",
2026-06-02T10:47:23.2194029Z       "requiredStages": [],
2026-06-02T10:47:23.2194140Z       "stages": {
2026-06-02T10:47:23.2194256Z         "doc": {
2026-06-02T10:47:23.2194378Z           "complete": false,
2026-06-02T10:47:23.2194501Z           "evidence": []
2026-06-02T10:47:23.2194612Z         },
2026-06-02T10:47:23.2194722Z         "impl": {
2026-06-02T10:47:23.2194845Z           "complete": false,
2026-06-02T10:47:23.2194962Z           "evidence": []
2026-06-02T10:47:23.2195078Z         },
2026-06-02T10:47:23.2195185Z         "int": {
2026-06-02T10:47:23.2195312Z           "complete": false,
2026-06-02T10:47:23.2195444Z           "evidence": []
2026-06-02T10:47:23.2195550Z         },
2026-06-02T10:47:23.2195663Z         "unit": {
2026-06-02T10:47:23.2195792Z           "complete": false,
2026-06-02T10:47:23.2195917Z           "evidence": []
2026-06-02T10:47:23.2196021Z         }
2026-06-02T10:47:23.2196137Z       }
2026-06-02T10:47:23.2196246Z     },
2026-06-02T10:47:23.2196350Z     {
2026-06-02T10:47:23.2196497Z       "id": "REQ-HAZARD-ID-CHARSET",
2026-06-02T10:47:23.2196843Z       "title": "Addressable-id charset reserves :/@ delimiters; validated at every creation seam (4.6)",
2026-06-02T10:47:23.2196981Z       "requiredStages": [
2026-06-02T10:47:23.2197091Z         "impl",
2026-06-02T10:47:23.2197212Z         "unit"
2026-06-02T10:47:23.2197432Z       ],
2026-06-02T10:47:23.2197549Z       "stages": {
2026-06-02T10:47:23.2197665Z         "doc": {
2026-06-02T10:47:23.2197790Z           "complete": true,
2026-06-02T10:47:23.2197911Z           "evidence": [
2026-06-02T10:47:23.2198019Z             {
2026-06-02T10:47:23.2198188Z               "path": "docs/KNOWN-HAZARDS.md",
2026-06-02T10:47:23.2198312Z               "line": 131
2026-06-02T10:47:23.2198427Z             }
2026-06-02T10:47:23.2198539Z           ]
2026-06-02T10:47:23.2198642Z         },
2026-06-02T10:47:23.2198760Z         "impl": {
2026-06-02T10:47:23.2198885Z           "complete": true,
2026-06-02T10:47:23.2199013Z           "evidence": [
2026-06-02T10:47:23.2199123Z             {
2026-06-02T10:47:23.2199282Z               "path": "crates/spt-msg/src/ready.rs",
2026-06-02T10:47:23.2199407Z               "line": 50
2026-06-02T10:47:23.2199515Z             },
2026-06-02T10:47:23.2199627Z             {
2026-06-02T10:47:23.2199782Z               "path": "crates/spt-proto/src/id.rs",
2026-06-02T10:47:23.2199907Z               "line": 17
2026-06-02T10:47:23.2200019Z             },
2026-06-02T10:47:23.2200122Z             {
2026-06-02T10:47:23.2200293Z               "path": "crates/spt/src/api/startup.rs",
2026-06-02T10:47:23.2200409Z               "line": 150
2026-06-02T10:47:23.2200530Z             },
2026-06-02T10:47:23.2200635Z             {
2026-06-02T10:47:23.2200797Z               "path": "crates/spt/src/api/startup.rs",
2026-06-02T10:47:23.2200922Z               "line": 238
2026-06-02T10:47:23.2201031Z             },
2026-06-02T10:47:23.2201141Z             {
2026-06-02T10:47:23.2201292Z               "path": "crates/spt/src/api/worker.rs",
2026-06-02T10:47:23.2201422Z               "line": 32
2026-06-02T10:47:23.2201529Z             }
2026-06-02T10:47:23.2201649Z           ]
2026-06-02T10:47:23.2201765Z         },
2026-06-02T10:47:23.2201874Z         "int": {
2026-06-02T10:47:23.2202003Z           "complete": false,
2026-06-02T10:47:23.2202121Z           "evidence": []
2026-06-02T10:47:23.2202234Z         },
2026-06-02T10:47:23.2202345Z         "unit": {
2026-06-02T10:47:23.2202475Z           "complete": true,
2026-06-02T10:47:23.2202600Z           "evidence": [
2026-06-02T10:47:23.2202705Z             {
2026-06-02T10:47:23.2203048Z               "path": "crates/spt-proto/src/id.rs",
2026-06-02T10:47:23.2203167Z               "line": 94
2026-06-02T10:47:23.2203282Z             },
2026-06-02T10:47:23.2203503Z             {
2026-06-02T10:47:23.2203663Z               "path": "crates/spt-proto/src/id.rs",
2026-06-02T10:47:23.2203787Z               "line": 111
2026-06-02T10:47:23.2203898Z             },
2026-06-02T10:47:23.2204009Z             {
2026-06-02T10:47:23.2204153Z               "path": "crates/spt-proto/src/id.rs",
2026-06-02T10:47:23.2204279Z               "line": 124
2026-06-02T10:47:23.2204386Z             },
2026-06-02T10:47:23.2204504Z             {
2026-06-02T10:47:23.2204659Z               "path": "crates/spt-proto/src/id.rs",
2026-06-02T10:47:23.2204774Z               "line": 134
2026-06-02T10:47:23.2204889Z             },
2026-06-02T10:47:23.2204993Z             {
2026-06-02T10:47:23.2205146Z               "path": "crates/spt-proto/src/id.rs",
2026-06-02T10:47:23.2205258Z               "line": 142
2026-06-02T10:47:23.2205376Z             },
2026-06-02T10:47:23.2205498Z             {
2026-06-02T10:47:23.2205643Z               "path": "crates/spt-proto/src/id.rs",
2026-06-02T10:47:23.2205771Z               "line": 154
2026-06-02T10:47:23.2205877Z             }
2026-06-02T10:47:23.2205992Z           ]
2026-06-02T10:47:23.2206100Z         }
2026-06-02T10:47:23.2206213Z       }
2026-06-02T10:47:23.2206322Z     },
2026-06-02T10:47:23.2206427Z     {
2026-06-02T10:47:23.2206582Z       "id": "REQ-HAZARD-INBOX-NO-DOUBLE",
2026-06-02T10:47:23.2206776Z       "title": "No double-delivery via legacy inbox (4.5)",
2026-06-02T10:47:23.2206910Z       "requiredStages": [
2026-06-02T10:47:23.2207022Z         "impl",
2026-06-02T10:47:23.2207143Z         "unit"
2026-06-02T10:47:23.2207264Z       ],
2026-06-02T10:47:23.2207495Z       "stages": {
2026-06-02T10:47:23.2207617Z         "doc": {
2026-06-02T10:47:23.2207747Z           "complete": false,
2026-06-02T10:47:23.2207876Z           "evidence": []
2026-06-02T10:47:23.2207986Z         },
2026-06-02T10:47:23.2208110Z         "impl": {
2026-06-02T10:47:23.2208255Z           "complete": true,
2026-06-02T10:47:23.2208376Z           "evidence": [
2026-06-02T10:47:23.2208502Z             {
2026-06-02T10:47:23.2208670Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-02T10:47:23.2208798Z               "line": 92
2026-06-02T10:47:23.2208909Z             }
2026-06-02T10:47:23.2209028Z           ]
2026-06-02T10:47:23.2209140Z         },
2026-06-02T10:47:23.2209252Z         "int": {
2026-06-02T10:47:23.2209388Z           "complete": false,
2026-06-02T10:47:23.2209508Z           "evidence": []
2026-06-02T10:47:23.2209621Z         },
2026-06-02T10:47:23.2209738Z         "unit": {
2026-06-02T10:47:23.2209865Z           "complete": true,
2026-06-02T10:47:23.2209989Z           "evidence": [
2026-06-02T10:47:23.2210099Z             {
2026-06-02T10:47:23.2210263Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-02T10:47:23.2210382Z               "line": 188
2026-06-02T10:47:23.2210501Z             }
2026-06-02T10:47:23.2210616Z           ]
2026-06-02T10:47:23.2210731Z         }
2026-06-02T10:47:23.2210846Z       }
2026-06-02T10:47:23.2210958Z     },
2026-06-02T10:47:23.2211074Z     {
2026-06-02T10:47:23.2211233Z       "id": "REQ-HAZARD-INFO-JSON-TORN-READ",
2026-06-02T10:47:23.2211453Z       "title": "State-file reads tolerate concurrent writes (1.2)",
2026-06-02T10:47:23.2211577Z       "requiredStages": [
2026-06-02T10:47:23.2211698Z         "impl",
2026-06-02T10:47:23.2211814Z         "unit"
2026-06-02T10:47:23.2211926Z       ],
2026-06-02T10:47:23.2212046Z       "stages": {
2026-06-02T10:47:23.2212157Z         "doc": {
2026-06-02T10:47:23.2212288Z           "complete": false,
2026-06-02T10:47:23.2212405Z           "evidence": []
2026-06-02T10:47:23.2212521Z         },
2026-06-02T10:47:23.2212641Z         "impl": {
2026-06-02T10:47:23.2212761Z           "complete": true,
2026-06-02T10:47:23.2212886Z           "evidence": [
2026-06-02T10:47:23.2212993Z             {
2026-06-02T10:47:23.2213304Z               "path": "crates/spt-store/src/info.rs",
2026-06-02T10:47:23.2213423Z               "line": 76
2026-06-02T10:47:23.2213540Z             },
2026-06-02T10:47:23.2213771Z             {
2026-06-02T10:47:23.2213925Z               "path": "crates/spt-store/src/info.rs",
2026-06-02T10:47:23.2214049Z               "line": 87
2026-06-02T10:47:23.2214159Z             },
2026-06-02T10:47:23.2214276Z             {
2026-06-02T10:47:23.2214424Z               "path": "crates/spt-store/src/info.rs",
2026-06-02T10:47:23.2214550Z               "line": 105
2026-06-02T10:47:23.2214662Z             }
2026-06-02T10:47:23.2214771Z           ]
2026-06-02T10:47:23.2214884Z         },
2026-06-02T10:47:23.2214995Z         "int": {
2026-06-02T10:47:23.2215126Z           "complete": false,
2026-06-02T10:47:23.2215241Z           "evidence": []
2026-06-02T10:47:23.2215357Z         },
2026-06-02T10:47:23.2215476Z         "unit": {
2026-06-02T10:47:23.2215598Z           "complete": true,
2026-06-02T10:47:23.2215725Z           "evidence": [
2026-06-02T10:47:23.2215844Z             {
2026-06-02T10:47:23.2216004Z               "path": "crates/spt-store/src/info.rs",
2026-06-02T10:47:23.2216132Z               "line": 129
2026-06-02T10:47:23.2216252Z             },
2026-06-02T10:47:23.2216370Z             {
2026-06-02T10:47:23.2216523Z               "path": "crates/spt-store/src/info.rs",
2026-06-02T10:47:23.2216650Z               "line": 147
2026-06-02T10:47:23.2216758Z             },
2026-06-02T10:47:23.2216874Z             {
2026-06-02T10:47:23.2217023Z               "path": "crates/spt-store/src/info.rs",
2026-06-02T10:47:23.2217152Z               "line": 166
2026-06-02T10:47:23.2217270Z             },
2026-06-02T10:47:23.2217484Z             {
2026-06-02T10:47:23.2217644Z               "path": "crates/spt-store/src/info.rs",
2026-06-02T10:47:23.2217761Z               "line": 177
2026-06-02T10:47:23.2217875Z             },
2026-06-02T10:47:23.2217990Z             {
2026-06-02T10:47:23.2218141Z               "path": "crates/spt-store/src/info.rs",
2026-06-02T10:47:23.2218274Z               "line": 190
2026-06-02T10:47:23.2218382Z             }
2026-06-02T10:47:23.2218505Z           ]
2026-06-02T10:47:23.2218615Z         }
2026-06-02T10:47:23.2218732Z       }
2026-06-02T10:47:23.2218836Z     },
2026-06-02T10:47:23.2218956Z     {
2026-06-02T10:47:23.2219111Z       "id": "REQ-HAZARD-LOCAL-API-AUTH",
2026-06-02T10:47:23.2219493Z       "title": "Every local `api` mutation authenticated to an endpoint/session (codex #13)",
2026-06-02T10:47:23.2219626Z       "requiredStages": [
2026-06-02T10:47:23.2219737Z         "impl",
2026-06-02T10:47:23.2219854Z         "unit"
2026-06-02T10:47:23.2219970Z       ],
2026-06-02T10:47:23.2220083Z       "stages": {
2026-06-02T10:47:23.2220201Z         "doc": {
2026-06-02T10:47:23.2220326Z           "complete": false,
2026-06-02T10:47:23.2220451Z           "evidence": []
2026-06-02T10:47:23.2220559Z         },
2026-06-02T10:47:23.2220684Z         "impl": {
2026-06-02T10:47:23.2220812Z           "complete": true,
2026-06-02T10:47:23.2220936Z           "evidence": [
2026-06-02T10:47:23.2221057Z             {
2026-06-02T10:47:23.2221226Z               "path": "crates/spt/src/api/auth.rs",
2026-06-02T10:47:23.2221358Z               "line": 14
2026-06-02T10:47:23.2221473Z             },
2026-06-02T10:47:23.2221593Z             {
2026-06-02T10:47:23.2221759Z               "path": "crates/spt/src/api/mod.rs",
2026-06-02T10:47:23.2221885Z               "line": 283
2026-06-02T10:47:23.2222000Z             }
2026-06-02T10:47:23.2222107Z           ]
2026-06-02T10:47:23.2222219Z         },
2026-06-02T10:47:23.2222330Z         "int": {
2026-06-02T10:47:23.2222462Z           "complete": false,
2026-06-02T10:47:23.2222587Z           "evidence": []
2026-06-02T10:47:23.2222697Z         },
2026-06-02T10:47:23.2222820Z         "unit": {
2026-06-02T10:47:23.2222940Z           "complete": true,
2026-06-02T10:47:23.2223398Z           "evidence": [
2026-06-02T10:47:23.2223618Z             {
2026-06-02T10:47:23.2223819Z               "path": "crates/spt/src/api/auth.rs",
2026-06-02T10:47:23.2224147Z               "line": 130
2026-06-02T10:47:23.2278884Z             },
2026-06-02T10:47:23.2279414Z             {
2026-06-02T10:47:23.2279654Z               "path": "crates/spt/src/api/auth.rs",
2026-06-02T10:47:23.2279795Z               "line": 138
2026-06-02T10:47:23.2279907Z             },
2026-06-02T10:47:23.2280020Z             {
2026-06-02T10:47:23.2280182Z               "path": "crates/spt/src/api/auth.rs",
2026-06-02T10:47:23.2280315Z               "line": 146
2026-06-02T10:47:23.2280425Z             },
2026-06-02T10:47:23.2280541Z             {
2026-06-02T10:47:23.2280695Z               "path": "crates/spt/src/api/auth.rs",
2026-06-02T10:47:23.2280815Z               "line": 154
2026-06-02T10:47:23.2280928Z             },
2026-06-02T10:47:23.2281035Z             {
2026-06-02T10:47:23.2281186Z               "path": "crates/spt/src/api/auth.rs",
2026-06-02T10:47:23.2281323Z               "line": 162
2026-06-02T10:47:23.2281439Z             },
2026-06-02T10:47:23.2281551Z             {
2026-06-02T10:47:23.2281706Z               "path": "crates/spt/src/api/auth.rs",
2026-06-02T10:47:23.2281837Z               "line": 170
2026-06-02T10:47:23.2281943Z             }
2026-06-02T10:47:23.2282055Z           ]
2026-06-02T10:47:23.2282160Z         }
2026-06-02T10:47:23.2282275Z       }
2026-06-02T10:47:23.2282385Z     },
2026-06-02T10:47:23.2282489Z     {
2026-06-02T10:47:23.2282658Z       "id": "REQ-HAZARD-PARENT-PID-PREFER",
2026-06-02T10:47:23.2282926Z       "title": "Prefer stable parent PID / broker handle over ephemeral PID (2.1)",
2026-06-02T10:47:23.2283063Z       "requiredStages": [],
2026-06-02T10:47:23.2283177Z       "stages": {
2026-06-02T10:47:23.2283294Z         "doc": {
2026-06-02T10:47:23.2283427Z           "complete": false,
2026-06-02T10:47:23.2283547Z           "evidence": []
2026-06-02T10:47:23.2283656Z         },
2026-06-02T10:47:23.2283769Z         "impl": {
2026-06-02T10:47:23.2283900Z           "complete": false,
2026-06-02T10:47:23.2284018Z           "evidence": []
2026-06-02T10:47:23.2284134Z         },
2026-06-02T10:47:23.2284252Z         "int": {
2026-06-02T10:47:23.2284381Z           "complete": false,
2026-06-02T10:47:23.2284503Z           "evidence": []
2026-06-02T10:47:23.2284607Z         },
2026-06-02T10:47:23.2284720Z         "unit": {
2026-06-02T10:47:23.2284836Z           "complete": false,
2026-06-02T10:47:23.2284952Z           "evidence": []
2026-06-02T10:47:23.2285062Z         }
2026-06-02T10:47:23.2285169Z       }
2026-06-02T10:47:23.2285284Z     },
2026-06-02T10:47:23.2285390Z     {
2026-06-02T10:47:23.2285560Z       "id": "REQ-HAZARD-REGISTRY-CONCURRENT",
2026-06-02T10:47:23.2285908Z       "title": "Concurrent SQLite openers (registry/spool) must not fail with 'database is locked' (4.7)",
2026-06-02T10:47:23.2286044Z       "requiredStages": [
2026-06-02T10:47:23.2286161Z         "impl",
2026-06-02T10:47:23.2286271Z         "unit"
2026-06-02T10:47:23.2286381Z       ],
2026-06-02T10:47:23.2286489Z       "stages": {
2026-06-02T10:47:23.2286602Z         "doc": {
2026-06-02T10:47:23.2286734Z           "complete": true,
2026-06-02T10:47:23.2286861Z           "evidence": [
2026-06-02T10:47:23.2286974Z             {
2026-06-02T10:47:23.2287124Z               "path": "docs/KNOWN-HAZARDS.md",
2026-06-02T10:47:23.2287251Z               "line": 137
2026-06-02T10:47:23.2287510Z             }
2026-06-02T10:47:23.2287627Z           ]
2026-06-02T10:47:23.2287732Z         },
2026-06-02T10:47:23.2287854Z         "impl": {
2026-06-02T10:47:23.2287979Z           "complete": true,
2026-06-02T10:47:23.2288093Z           "evidence": [
2026-06-02T10:47:23.2288203Z             {
2026-06-02T10:47:23.2288361Z               "path": "crates/spt-store/src/db.rs",
2026-06-02T10:47:23.2288484Z               "line": 29
2026-06-02T10:47:23.2288593Z             },
2026-06-02T10:47:23.2288705Z             {
2026-06-02T10:47:23.2288882Z               "path": "crates/spt-store/src/registry.rs",
2026-06-02T10:47:23.2288998Z               "line": 24
2026-06-02T10:47:23.2289116Z             },
2026-06-02T10:47:23.2289370Z             {
2026-06-02T10:47:23.2289544Z               "path": "crates/spt-store/src/spool.rs",
2026-06-02T10:47:23.2289769Z               "line": 48
2026-06-02T10:47:23.2289887Z             }
2026-06-02T10:47:23.2289997Z           ]
2026-06-02T10:47:23.2290101Z         },
2026-06-02T10:47:23.2290215Z         "int": {
2026-06-02T10:47:23.2290335Z           "complete": false,
2026-06-02T10:47:23.2290460Z           "evidence": []
2026-06-02T10:47:23.2290565Z         },
2026-06-02T10:47:23.2290682Z         "unit": {
2026-06-02T10:47:23.2290810Z           "complete": true,
2026-06-02T10:47:23.2290925Z           "evidence": [
2026-06-02T10:47:23.2291040Z             {
2026-06-02T10:47:23.2291207Z               "path": "crates/spt-store/src/registry.rs",
2026-06-02T10:47:23.2291334Z               "line": 140
2026-06-02T10:47:23.2291440Z             }
2026-06-02T10:47:23.2291553Z           ]
2026-06-02T10:47:23.2291664Z         }
2026-06-02T10:47:23.2291766Z       }
2026-06-02T10:47:23.2291882Z     },
2026-06-02T10:47:23.2291987Z     {
2026-06-02T10:47:23.2292151Z       "id": "REQ-HAZARD-REGISTRY-STALE-CLEAN",
2026-06-02T10:47:23.2292423Z       "title": "Stale registry entries degrade to fallback, never hard-fail (4.3)",
2026-06-02T10:47:23.2292552Z       "requiredStages": [
2026-06-02T10:47:23.2292668Z         "impl",
2026-06-02T10:47:23.2292776Z         "unit"
2026-06-02T10:47:23.2292888Z       ],
2026-06-02T10:47:23.2293000Z       "stages": {
2026-06-02T10:47:23.2293112Z         "doc": {
2026-06-02T10:47:23.2293230Z           "complete": false,
2026-06-02T10:47:23.2293351Z           "evidence": []
2026-06-02T10:47:23.2293462Z         },
2026-06-02T10:47:23.2293573Z         "impl": {
2026-06-02T10:47:23.2293703Z           "complete": true,
2026-06-02T10:47:23.2293820Z           "evidence": [
2026-06-02T10:47:23.2293936Z             {
2026-06-02T10:47:23.2294099Z               "path": "crates/spt-store/src/proc.rs",
2026-06-02T10:47:23.2294222Z               "line": 8
2026-06-02T10:47:23.2294343Z             },
2026-06-02T10:47:23.2294450Z             {
2026-06-02T10:47:23.2294620Z               "path": "crates/spt-store/src/registry.rs",
2026-06-02T10:47:23.2294742Z               "line": 49
2026-06-02T10:47:23.2294854Z             },
2026-06-02T10:47:23.2294963Z             {
2026-06-02T10:47:23.2295128Z               "path": "crates/spt-store/src/registry.rs",
2026-06-02T10:47:23.2295249Z               "line": 56
2026-06-02T10:47:23.2295356Z             },
2026-06-02T10:47:23.2295470Z             {
2026-06-02T10:47:23.2295627Z               "path": "crates/spt-store/src/registry.rs",
2026-06-02T10:47:23.2295750Z               "line": 96
2026-06-02T10:47:23.2295860Z             },
2026-06-02T10:47:23.2295973Z             {
2026-06-02T10:47:23.2296131Z               "path": "crates/spt-store/src/registry.rs",
2026-06-02T10:47:23.2296249Z               "line": 116
2026-06-02T10:47:23.2296354Z             }
2026-06-02T10:47:23.2296461Z           ]
2026-06-02T10:47:23.2296577Z         },
2026-06-02T10:47:23.2296696Z         "int": {
2026-06-02T10:47:23.2296826Z           "complete": false,
2026-06-02T10:47:23.2296951Z           "evidence": []
2026-06-02T10:47:23.2297056Z         },
2026-06-02T10:47:23.2297175Z         "unit": {
2026-06-02T10:47:23.2297293Z           "complete": true,
2026-06-02T10:47:23.2297522Z           "evidence": [
2026-06-02T10:47:23.2297626Z             {
2026-06-02T10:47:23.2297783Z               "path": "crates/spt-store/src/proc.rs",
2026-06-02T10:47:23.2297903Z               "line": 103
2026-06-02T10:47:23.2298011Z             },
2026-06-02T10:47:23.2298126Z             {
2026-06-02T10:47:23.2298274Z               "path": "crates/spt-store/src/proc.rs",
2026-06-02T10:47:23.2298398Z               "line": 109
2026-06-02T10:47:23.2298512Z             },
2026-06-02T10:47:23.2298624Z             {
2026-06-02T10:47:23.2298793Z               "path": "crates/spt-store/src/registry.rs",
2026-06-02T10:47:23.2298911Z               "line": 171
2026-06-02T10:47:23.2299025Z             },
2026-06-02T10:47:23.2299269Z             {
2026-06-02T10:47:23.2299436Z               "path": "crates/spt-store/src/registry.rs",
2026-06-02T10:47:23.2299674Z               "line": 181
2026-06-02T10:47:23.2299783Z             },
2026-06-02T10:47:23.2299895Z             {
2026-06-02T10:47:23.2300055Z               "path": "crates/spt-store/src/registry.rs",
2026-06-02T10:47:23.2300178Z               "line": 195
2026-06-02T10:47:23.2300284Z             },
2026-06-02T10:47:23.2300398Z             {
2026-06-02T10:47:23.2300556Z               "path": "crates/spt-store/src/registry.rs",
2026-06-02T10:47:23.2300671Z               "line": 207
2026-06-02T10:47:23.2300782Z             },
2026-06-02T10:47:23.2300888Z             {
2026-06-02T10:47:23.2301052Z               "path": "crates/spt-store/src/registry.rs",
2026-06-02T10:47:23.2301172Z               "line": 215
2026-06-02T10:47:23.2301292Z             }
2026-06-02T10:47:23.2301410Z           ]
2026-06-02T10:47:23.2301520Z         }
2026-06-02T10:47:23.2301636Z       }
2026-06-02T10:47:23.2301749Z     },
2026-06-02T10:47:23.2301861Z     {
2026-06-02T10:47:23.2302022Z       "id": "REQ-HAZARD-RESTART-IDEMPOTENT",
2026-06-02T10:47:23.2302395Z       "title": "Idempotent/exactly-once delivery across brain restart at every broker boundary (codex #14)",
2026-06-02T10:47:23.2302528Z       "requiredStages": [],
2026-06-02T10:47:23.2302643Z       "stages": {
2026-06-02T10:47:23.2302760Z         "doc": {
2026-06-02T10:47:23.2302888Z           "complete": false,
2026-06-02T10:47:23.2303014Z           "evidence": []
2026-06-02T10:47:23.2303124Z         },
2026-06-02T10:47:23.2303243Z         "impl": {
2026-06-02T10:47:23.2303371Z           "complete": false,
2026-06-02T10:47:23.2303488Z           "evidence": []
2026-06-02T10:47:23.2303602Z         },
2026-06-02T10:47:23.2303713Z         "int": {
2026-06-02T10:47:23.2303843Z           "complete": false,
2026-06-02T10:47:23.2303961Z           "evidence": []
2026-06-02T10:47:23.2304076Z         },
2026-06-02T10:47:23.2304203Z         "unit": {
2026-06-02T10:47:23.2304324Z           "complete": false,
2026-06-02T10:47:23.2304449Z           "evidence": []
2026-06-02T10:47:23.2304561Z         }
2026-06-02T10:47:23.2304675Z       }
2026-06-02T10:47:23.2304782Z     },
2026-06-02T10:47:23.2304894Z     {
2026-06-02T10:47:23.2305051Z       "id": "REQ-HAZARD-SINGLE-PATH-SOURCE",
2026-06-02T10:47:23.2305308Z       "title": "Single path/registry source of truth; no layout ambiguity (6.1)",
2026-06-02T10:47:23.2305436Z       "requiredStages": [
2026-06-02T10:47:23.2305545Z         "impl",
2026-06-02T10:47:23.2305656Z         "unit"
2026-06-02T10:47:23.2305762Z       ],
2026-06-02T10:47:23.2305876Z       "stages": {
2026-06-02T10:47:23.2305993Z         "doc": {
2026-06-02T10:47:23.2306116Z           "complete": false,
2026-06-02T10:47:23.2306241Z           "evidence": []
2026-06-02T10:47:23.2306348Z         },
2026-06-02T10:47:23.2306467Z         "impl": {
2026-06-02T10:47:23.2306589Z           "complete": true,
2026-06-02T10:47:23.2306725Z           "evidence": [
2026-06-02T10:47:23.2306837Z             {
2026-06-02T10:47:23.2307003Z               "path": "crates/spt-store/src/perch.rs",
2026-06-02T10:47:23.2307132Z               "line": 33
2026-06-02T10:47:23.2307236Z             },
2026-06-02T10:47:23.2307554Z             {
2026-06-02T10:47:23.2307794Z               "path": "crates/spt-store/src/perch.rs",
2026-06-02T10:47:23.2307924Z               "line": 61
2026-06-02T10:47:23.2308035Z             },
2026-06-02T10:47:23.2308140Z             {
2026-06-02T10:47:23.2308306Z               "path": "crates/spt-store/src/perch.rs",
2026-06-02T10:47:23.2308428Z               "line": 128
2026-06-02T10:47:23.2308541Z             }
2026-06-02T10:47:23.2308651Z           ]
2026-06-02T10:47:23.2308768Z         },
2026-06-02T10:47:23.2308882Z         "int": {
2026-06-02T10:47:23.2309004Z           "complete": false,
2026-06-02T10:47:23.2309125Z           "evidence": []
2026-06-02T10:47:23.2309230Z         },
2026-06-02T10:47:23.2309347Z         "unit": {
2026-06-02T10:47:23.2309614Z           "complete": true,
2026-06-02T10:47:23.2309739Z           "evidence": [
2026-06-02T10:47:23.2309966Z             {
2026-06-02T10:47:23.2310121Z               "path": "crates/spt-store/src/perch.rs",
2026-06-02T10:47:23.2310246Z               "line": 258
2026-06-02T10:47:23.2310356Z             },
2026-06-02T10:47:23.2310472Z             {
2026-06-02T10:47:23.2310628Z               "path": "crates/spt-store/src/perch.rs",
2026-06-02T10:47:23.2310754Z               "line": 284
2026-06-02T10:47:23.2310867Z             },
2026-06-02T10:47:23.2310974Z             {
2026-06-02T10:47:23.2311129Z               "path": "crates/spt-store/src/perch.rs",
2026-06-02T10:47:23.2311244Z               "line": 297
2026-06-02T10:47:23.2311358Z             },
2026-06-02T10:47:23.2311465Z             {
2026-06-02T10:47:23.2311629Z               "path": "crates/spt-store/src/perch.rs",
2026-06-02T10:47:23.2311754Z               "line": 310
2026-06-02T10:47:23.2311862Z             }
2026-06-02T10:47:23.2311977Z           ]
2026-06-02T10:47:23.2312079Z         }
2026-06-02T10:47:23.2312191Z       }
2026-06-02T10:47:23.2312299Z     },
2026-06-02T10:47:23.2312410Z     {
2026-06-02T10:47:23.2312561Z       "id": "REQ-HAZARD-SOFT-CLEANUP",
2026-06-02T10:47:23.2312834Z       "title": "Soft-cleanup preserves state, removes only the ready marker (6.2)",
2026-06-02T10:47:23.2312963Z       "requiredStages": [
2026-06-02T10:47:23.2313072Z         "impl",
2026-06-02T10:47:23.2313186Z         "unit"
2026-06-02T10:47:23.2313291Z       ],
2026-06-02T10:47:23.2313413Z       "stages": {
2026-06-02T10:47:23.2313528Z         "doc": {
2026-06-02T10:47:23.2313651Z           "complete": false,
2026-06-02T10:47:23.2313774Z           "evidence": []
2026-06-02T10:47:23.2313878Z         },
2026-06-02T10:47:23.2313994Z         "impl": {
2026-06-02T10:47:23.2314113Z           "complete": true,
2026-06-02T10:47:23.2314237Z           "evidence": [
2026-06-02T10:47:23.2314349Z             {
2026-06-02T10:47:23.2314511Z               "path": "crates/spt-msg/src/ready.rs",
2026-06-02T10:47:23.2314634Z               "line": 107
2026-06-02T10:47:23.2314749Z             },
2026-06-02T10:47:23.2314868Z             {
2026-06-02T10:47:23.2315039Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-02T10:47:23.2315160Z               "line": 59
2026-06-02T10:47:23.2315272Z             }
2026-06-02T10:47:23.2315378Z           ]
2026-06-02T10:47:23.2315496Z         },
2026-06-02T10:47:23.2315604Z         "int": {
2026-06-02T10:47:23.2315730Z           "complete": false,
2026-06-02T10:47:23.2315845Z           "evidence": []
2026-06-02T10:47:23.2315958Z         },
2026-06-02T10:47:23.2316068Z         "unit": {
2026-06-02T10:47:23.2316187Z           "complete": true,
2026-06-02T10:47:23.2316308Z           "evidence": [
2026-06-02T10:47:23.2316413Z             {
2026-06-02T10:47:23.2316567Z               "path": "crates/spt-msg/src/ready.rs",
2026-06-02T10:47:23.2316683Z               "line": 225
2026-06-02T10:47:23.2316789Z             },
2026-06-02T10:47:23.2316903Z             {
2026-06-02T10:47:23.2317061Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-02T10:47:23.2317186Z               "line": 247
2026-06-02T10:47:23.2317295Z             },
2026-06-02T10:47:23.2317554Z             {
2026-06-02T10:47:23.2317713Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-02T10:47:23.2317837Z               "line": 257
2026-06-02T10:47:23.2317960Z             }
2026-06-02T10:47:23.2318067Z           ]
2026-06-02T10:47:23.2318180Z         }
2026-06-02T10:47:23.2318289Z       }
2026-06-02T10:47:23.2318399Z     },
2026-06-02T10:47:23.2318504Z     {
2026-06-02T10:47:23.2318662Z       "id": "REQ-HAZARD-STALE-INDEX-LOCK",
2026-06-02T10:47:23.2318860Z       "title": "Sweep stale lockfiles on daemon boot (1.3)",
2026-06-02T10:47:23.2318988Z       "requiredStages": [],
2026-06-02T10:47:23.2319103Z       "stages": {
2026-06-02T10:47:23.2319211Z         "doc": {
2026-06-02T10:47:23.2319342Z           "complete": false,
2026-06-02T10:47:23.2319604Z           "evidence": []
2026-06-02T10:47:23.2319720Z         },
2026-06-02T10:47:23.2319988Z         "impl": {
2026-06-02T10:47:23.2320110Z           "complete": false,
2026-06-02T10:47:23.2320230Z           "evidence": []
2026-06-02T10:47:23.2320336Z         },
2026-06-02T10:47:23.2320450Z         "int": {
2026-06-02T10:47:23.2320571Z           "complete": false,
2026-06-02T10:47:23.2320695Z           "evidence": []
2026-06-02T10:47:23.2320807Z         },
2026-06-02T10:47:23.2320916Z         "unit": {
2026-06-02T10:47:23.2321041Z           "complete": false,
2026-06-02T10:47:23.2321156Z           "evidence": []
2026-06-02T10:47:23.2321270Z         }
2026-06-02T10:47:23.2321376Z       }
2026-06-02T10:47:23.2321484Z     },
2026-06-02T10:47:23.2321603Z     {
2026-06-02T10:47:23.2321768Z       "id": "REQ-HAZARD-STALE-SIGNOFF-SENTINEL",
2026-06-02T10:47:23.2321997Z       "title": "Stale signoff sentinel does not kill a fresh start (3.2)",
2026-06-02T10:47:23.2322120Z       "requiredStages": [
2026-06-02T10:47:23.2322248Z         "impl",
2026-06-02T10:47:23.2322360Z         "unit"
2026-06-02T10:47:23.2322474Z       ],
2026-06-02T10:47:23.2322590Z       "stages": {
2026-06-02T10:47:23.2322696Z         "doc": {
2026-06-02T10:47:23.2322817Z           "complete": false,
2026-06-02T10:47:23.2322931Z           "evidence": []
2026-06-02T10:47:23.2323037Z         },
2026-06-02T10:47:23.2323153Z         "impl": {
2026-06-02T10:47:23.2323276Z           "complete": true,
2026-06-02T10:47:23.2323404Z           "evidence": [
2026-06-02T10:47:23.2323512Z             {
2026-06-02T10:47:23.2323684Z               "path": "crates/spt-live/src/signoff.rs",
2026-06-02T10:47:23.2323796Z               "line": 28
2026-06-02T10:47:23.2323907Z             }
2026-06-02T10:47:23.2324019Z           ]
2026-06-02T10:47:23.2324125Z         },
2026-06-02T10:47:23.2324243Z         "int": {
2026-06-02T10:47:23.2324362Z           "complete": false,
2026-06-02T10:47:23.2324484Z           "evidence": []
2026-06-02T10:47:23.2324590Z         },
2026-06-02T10:47:23.2324714Z         "unit": {
2026-06-02T10:47:23.2324843Z           "complete": true,
2026-06-02T10:47:23.2324972Z           "evidence": [
2026-06-02T10:47:23.2325087Z             {
2026-06-02T10:47:23.2325246Z               "path": "crates/spt-live/src/signoff.rs",
2026-06-02T10:47:23.2325366Z               "line": 199
2026-06-02T10:47:23.2325472Z             }
2026-06-02T10:47:23.2325579Z           ]
2026-06-02T10:47:23.2325687Z         }
2026-06-02T10:47:23.2325791Z       }
2026-06-02T10:47:23.2325898Z     },
2026-06-02T10:47:23.2326004Z     {
2026-06-02T10:47:23.2326154Z       "id": "REQ-HAZARD-STDIN-SESSION-ID",
2026-06-02T10:47:23.2326332Z       "title": "Stdin session_id precedence over env (2.2)",
2026-06-02T10:47:23.2326464Z       "requiredStages": [],
2026-06-02T10:47:23.2326584Z       "stages": {
2026-06-02T10:47:23.2326692Z         "doc": {
2026-06-02T10:47:23.2326819Z           "complete": false,
2026-06-02T10:47:23.2326936Z           "evidence": []
2026-06-02T10:47:23.2327059Z         },
2026-06-02T10:47:23.2327172Z         "impl": {
2026-06-02T10:47:23.2327299Z           "complete": false,
2026-06-02T10:47:23.2327549Z           "evidence": []
2026-06-02T10:47:23.2327656Z         },
2026-06-02T10:47:23.2327772Z         "int": {
2026-06-02T10:47:23.2327891Z           "complete": false,
2026-06-02T10:47:23.2328013Z           "evidence": []
2026-06-02T10:47:23.2328116Z         },
2026-06-02T10:47:23.2328228Z         "unit": {
2026-06-02T10:47:23.2328350Z           "complete": false,
2026-06-02T10:47:23.2328466Z           "evidence": []
2026-06-02T10:47:23.2328577Z         }
2026-06-02T10:47:23.2328684Z       }
2026-06-02T10:47:23.2328795Z     },
2026-06-02T10:47:23.2328898Z     {
2026-06-02T10:47:23.2329061Z       "id": "REQ-HAZARD-SUBPROCESS-TIMEOUT",
2026-06-02T10:47:23.2329267Z       "title": "Every harness/git subprocess has a timeout (5.3)",
2026-06-02T10:47:23.2329394Z       "requiredStages": [
2026-06-02T10:47:23.2329508Z         "impl",
2026-06-02T10:47:23.2329616Z         "unit"
2026-06-02T10:47:23.2329912Z       ],
2026-06-02T10:47:23.2330024Z       "stages": {
2026-06-02T10:47:23.2330248Z         "doc": {
2026-06-02T10:47:23.2330369Z           "complete": false,
2026-06-02T10:47:23.2330493Z           "evidence": []
2026-06-02T10:47:23.2330604Z         },
2026-06-02T10:47:23.2330713Z         "impl": {
2026-06-02T10:47:23.2330835Z           "complete": true,
2026-06-02T10:47:23.2330951Z           "evidence": [
2026-06-02T10:47:23.2331064Z             {
2026-06-02T10:47:23.2331233Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-02T10:47:23.2331355Z               "line": 325
2026-06-02T10:47:23.2331466Z             },
2026-06-02T10:47:23.2331572Z             {
2026-06-02T10:47:23.2331743Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-02T10:47:23.2331859Z               "line": 361
2026-06-02T10:47:23.2331973Z             }
2026-06-02T10:47:23.2332085Z           ]
2026-06-02T10:47:23.2332189Z         },
2026-06-02T10:47:23.2332313Z         "int": {
2026-06-02T10:47:23.2332433Z           "complete": false,
2026-06-02T10:47:23.2332557Z           "evidence": []
2026-06-02T10:47:23.2332667Z         },
2026-06-02T10:47:23.2332780Z         "unit": {
2026-06-02T10:47:23.2332899Z           "complete": true,
2026-06-02T10:47:23.2333018Z           "evidence": [
2026-06-02T10:47:23.2333131Z             {
2026-06-02T10:47:23.2333293Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-02T10:47:23.2333417Z               "line": 453
2026-06-02T10:47:23.2333523Z             }
2026-06-02T10:47:23.2333635Z           ]
2026-06-02T10:47:23.2333748Z         }
2026-06-02T10:47:23.2333853Z       }
2026-06-02T10:47:23.2333961Z     },
2026-06-02T10:47:23.2334064Z     {
2026-06-02T10:47:23.2334222Z       "id": "REQ-HAZARD-UNC-PATH-STRIP",
2026-06-02T10:47:23.2334429Z       "title": "Strip Windows UNC prefix on serialized paths (5.4)",
2026-06-02T10:47:23.2334560Z       "requiredStages": [
2026-06-02T10:47:23.2334675Z         "impl",
2026-06-02T10:47:23.2334793Z         "unit"
2026-06-02T10:47:23.2334902Z       ],
2026-06-02T10:47:23.2335014Z       "stages": {
2026-06-02T10:47:23.2335136Z         "doc": {
2026-06-02T10:47:23.2335258Z           "complete": false,
2026-06-02T10:47:23.2335384Z           "evidence": []
2026-06-02T10:47:23.2335492Z         },
2026-06-02T10:47:23.2335606Z         "impl": {
2026-06-02T10:47:23.2335733Z           "complete": true,
2026-06-02T10:47:23.2335849Z           "evidence": [
2026-06-02T10:47:23.2335961Z             {
2026-06-02T10:47:23.2336118Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-02T10:47:23.2336236Z               "line": 35
2026-06-02T10:47:23.2336340Z             }
2026-06-02T10:47:23.2336446Z           ]
2026-06-02T10:47:23.2336555Z         },
2026-06-02T10:47:23.2336662Z         "int": {
2026-06-02T10:47:23.2336789Z           "complete": false,
2026-06-02T10:47:23.2337556Z           "evidence": []
2026-06-02T10:47:23.2337669Z         },
2026-06-02T10:47:23.2337784Z         "unit": {
2026-06-02T10:47:23.2337918Z           "complete": true,
2026-06-02T10:47:23.2338043Z           "evidence": [
2026-06-02T10:47:23.2338159Z             {
2026-06-02T10:47:23.2338325Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-02T10:47:23.2338442Z               "line": 217
2026-06-02T10:47:23.2338556Z             }
2026-06-02T10:47:23.2338669Z           ]
2026-06-02T10:47:23.2338774Z         }
2026-06-02T10:47:23.2338890Z       }
2026-06-02T10:47:23.2338995Z     },
2026-06-02T10:47:23.2339106Z     {
2026-06-02T10:47:23.2339250Z       "id": "REQ-HAZARD-UPDATE-ROLLBACK",
2026-06-02T10:47:23.2339621Z       "title": "Self-update rejects version rollback; metadata expiry + adapter content signing (codex #5)",
2026-06-02T10:47:23.2339751Z       "requiredStages": [],
2026-06-02T10:47:23.2339862Z       "stages": {
2026-06-02T10:47:23.2339975Z         "doc": {
2026-06-02T10:47:23.2340096Z           "complete": false,
2026-06-02T10:47:23.2340220Z           "evidence": []
2026-06-02T10:47:23.2340325Z         },
2026-06-02T10:47:23.2340594Z         "impl": {
2026-06-02T10:47:23.2340722Z           "complete": false,
2026-06-02T10:47:23.2340948Z           "evidence": []
2026-06-02T10:47:23.2341057Z         },
2026-06-02T10:47:23.2341166Z         "int": {
2026-06-02T10:47:23.2341291Z           "complete": false,
2026-06-02T10:47:23.2341408Z           "evidence": []
2026-06-02T10:47:23.2341522Z         },
2026-06-02T10:47:23.2341635Z         "unit": {
2026-06-02T10:47:23.2341756Z           "complete": false,
2026-06-02T10:47:23.2341876Z           "evidence": []
2026-06-02T10:47:23.2341982Z         }
2026-06-02T10:47:23.2342093Z       }
2026-06-02T10:47:23.2342198Z     },
2026-06-02T10:47:23.2342308Z     {
2026-06-02T10:47:23.2342472Z       "id": "REQ-HAZARD-WINDOWS-PID-RECYCLE",
2026-06-02T10:47:23.2342691Z       "title": "Windows PID-recycling false positives guarded (5.1)",
2026-06-02T10:47:23.2342816Z       "requiredStages": [
2026-06-02T10:47:23.2342927Z         "impl",
2026-06-02T10:47:23.2343040Z         "unit"
2026-06-02T10:47:23.2343152Z       ],
2026-06-02T10:47:23.2343273Z       "stages": {
2026-06-02T10:47:23.2343397Z         "doc": {
2026-06-02T10:47:23.2343519Z           "complete": false,
2026-06-02T10:47:23.2343640Z           "evidence": []
2026-06-02T10:47:23.2343746Z         },
2026-06-02T10:47:23.2343862Z         "impl": {
2026-06-02T10:47:23.2343978Z           "complete": true,
2026-06-02T10:47:23.2344100Z           "evidence": [
2026-06-02T10:47:23.2344211Z             {
2026-06-02T10:47:23.2344370Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-02T10:47:23.2344491Z               "line": 91
2026-06-02T10:47:23.2344635Z             },
2026-06-02T10:47:23.2344749Z             {
2026-06-02T10:47:23.2344903Z               "path": "crates/spt/src/api/startup.rs",
2026-06-02T10:47:23.2345023Z               "line": 82
2026-06-02T10:47:23.2345137Z             }
2026-06-02T10:47:23.2345244Z           ]
2026-06-02T10:47:23.2345356Z         },
2026-06-02T10:47:23.2345463Z         "int": {
2026-06-02T10:47:23.2345600Z           "complete": false,
2026-06-02T10:47:23.2345717Z           "evidence": []
2026-06-02T10:47:23.2345836Z         },
2026-06-02T10:47:23.2345947Z         "unit": {
2026-06-02T10:47:23.2346066Z           "complete": true,
2026-06-02T10:47:23.2346186Z           "evidence": [
2026-06-02T10:47:23.2346292Z             {
2026-06-02T10:47:23.2346448Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-02T10:47:23.2346563Z               "line": 233
2026-06-02T10:47:23.2346677Z             },
2026-06-02T10:47:23.2346789Z             {
2026-06-02T10:47:23.2346943Z               "path": "crates/spt-store/src/proc.rs",
2026-06-02T10:47:23.2347068Z               "line": 120
2026-06-02T10:47:23.2347176Z             },
2026-06-02T10:47:23.2347288Z             {
2026-06-02T10:47:23.2347693Z               "path": "crates/spt/src/api/startup.rs",
2026-06-02T10:47:23.2347843Z               "line": 328
2026-06-02T10:47:23.2347957Z             },
2026-06-02T10:47:23.2348065Z             {
2026-06-02T10:47:23.2348232Z               "path": "crates/spt/src/api/startup.rs",
2026-06-02T10:47:23.2348356Z               "line": 354
2026-06-02T10:47:23.2348467Z             }
2026-06-02T10:47:23.2348574Z           ]
2026-06-02T10:47:23.2348687Z         }
2026-06-02T10:47:23.2348798Z       }
2026-06-02T10:47:23.2348902Z     },
2026-06-02T10:47:23.2349011Z     {
2026-06-02T10:47:23.2349151Z       "id": "REQ-HAZARD-WORKER-PATH",
2026-06-02T10:47:23.2349407Z       "title": "Single source of truth for Worker/Psyche perch location (1.5)",
2026-06-02T10:47:23.2349533Z       "requiredStages": [
2026-06-02T10:47:23.2349649Z         "impl",
2026-06-02T10:47:23.2349763Z         "unit"
2026-06-02T10:47:23.2349871Z       ],
2026-06-02T10:47:23.2349985Z       "stages": {
2026-06-02T10:47:23.2350091Z         "doc": {
2026-06-02T10:47:23.2350217Z           "complete": false,
2026-06-02T10:47:23.2350333Z           "evidence": []
2026-06-02T10:47:23.2350444Z         },
2026-06-02T10:47:23.2350562Z         "impl": {
2026-06-02T10:47:23.2350827Z           "complete": true,
2026-06-02T10:47:23.2350949Z           "evidence": [
2026-06-02T10:47:23.2351164Z             {
2026-06-02T10:47:23.2351322Z               "path": "crates/spt-store/src/perch.rs",
2026-06-02T10:47:23.2351437Z               "line": 84
2026-06-02T10:47:23.2351547Z             },
2026-06-02T10:47:23.2351656Z             {
2026-06-02T10:47:23.2351807Z               "path": "crates/spt-store/src/perch.rs",
2026-06-02T10:47:23.2351925Z               "line": 129
2026-06-02T10:47:23.2352030Z             }
2026-06-02T10:47:23.2352138Z           ]
2026-06-02T10:47:23.2352240Z         },
2026-06-02T10:47:23.2352356Z         "int": {
2026-06-02T10:47:23.2352483Z           "complete": false,
2026-06-02T10:47:23.2352600Z           "evidence": []
2026-06-02T10:47:23.2352709Z         },
2026-06-02T10:47:23.2352820Z         "unit": {
2026-06-02T10:47:23.2352949Z           "complete": true,
2026-06-02T10:47:23.2353065Z           "evidence": [
2026-06-02T10:47:23.2353181Z             {
2026-06-02T10:47:23.2353347Z               "path": "crates/spt-store/src/perch.rs",
2026-06-02T10:47:23.2353468Z               "line": 238
2026-06-02T10:47:23.2353580Z             },
2026-06-02T10:47:23.2353689Z             {
2026-06-02T10:47:23.2353846Z               "path": "crates/spt-store/src/perch.rs",
2026-06-02T10:47:23.2353961Z               "line": 267
2026-06-02T10:47:23.2354076Z             }
2026-06-02T10:47:23.2354190Z           ]
2026-06-02T10:47:23.2354298Z         }
2026-06-02T10:47:23.2354413Z       }
2026-06-02T10:47:23.2354515Z     },
2026-06-02T10:47:23.2354624Z     {
2026-06-02T10:47:23.2354745Z       "id": "REQ-INFRA-1",
2026-06-02T10:47:23.2354996Z       "title": "GitHub issue tracking for v1; tangled.org as migration target",
2026-06-02T10:47:23.2355127Z       "requiredStages": [],
2026-06-02T10:47:23.2355237Z       "stages": {
2026-06-02T10:47:23.2355351Z         "doc": {
2026-06-02T10:47:23.2355472Z           "complete": false,
2026-06-02T10:47:23.2355592Z           "evidence": []
2026-06-02T10:47:23.2355707Z         },
2026-06-02T10:47:23.2355822Z         "impl": {
2026-06-02T10:47:23.2355959Z           "complete": false,
2026-06-02T10:47:23.2356072Z           "evidence": []
2026-06-02T10:47:23.2356186Z         },
2026-06-02T10:47:23.2356313Z         "int": {
2026-06-02T10:47:23.2356441Z           "complete": false,
2026-06-02T10:47:23.2356560Z           "evidence": []
2026-06-02T10:47:23.2356670Z         },
2026-06-02T10:47:23.2356783Z         "unit": {
2026-06-02T10:47:23.2356911Z           "complete": false,
2026-06-02T10:47:23.2357034Z           "evidence": []
2026-06-02T10:47:23.2357140Z         }
2026-06-02T10:47:23.2357249Z       }
2026-06-02T10:47:23.2357475Z     },
2026-06-02T10:47:23.2357584Z     {
2026-06-02T10:47:23.2357710Z       "id": "REQ-INST-1",
2026-06-02T10:47:23.2357924Z       "title": "endpoint ID vs instance split (adapter-agnostic ID)",
2026-06-02T10:47:23.2358049Z       "requiredStages": [],
2026-06-02T10:47:23.2358161Z       "stages": {
2026-06-02T10:47:23.2358281Z         "doc": {
2026-06-02T10:47:23.2358580Z           "complete": false,
2026-06-02T10:47:23.2358748Z           "evidence": []
2026-06-02T10:47:23.2358880Z         },
2026-06-02T10:47:23.2359015Z         "impl": {
2026-06-02T10:47:23.2359177Z           "complete": false,
2026-06-02T10:47:23.2359329Z           "evidence": []
2026-06-02T10:47:23.2359474Z         },
2026-06-02T10:47:23.2359618Z         "int": {
2026-06-02T10:47:23.2359784Z           "complete": false,
2026-06-02T10:47:23.2359958Z           "evidence": []
2026-06-02T10:47:23.2360091Z         },
2026-06-02T10:47:23.2360237Z         "unit": {
2026-06-02T10:47:23.2360387Z           "complete": false,
2026-06-02T10:47:23.2360551Z           "evidence": []
2026-06-02T10:47:23.2360694Z         }
2026-06-02T10:47:23.2360851Z       }
2026-06-02T10:47:23.2360998Z     },
2026-06-02T10:47:23.2361145Z     {
2026-06-02T10:47:23.2361332Z       "id": "REQ-INST-10",
2026-06-02T10:47:23.2361976Z       "title": "Qualified addressing [subnet:]id[@node] + ambiguity forces qualification",
2026-06-02T10:47:23.2362147Z       "requiredStages": [],
2026-06-02T10:47:23.2362387Z       "stages": {
2026-06-02T10:47:23.2362507Z         "doc": {
2026-06-02T10:47:23.2362640Z           "complete": false,
2026-06-02T10:47:23.2362762Z           "evidence": []
2026-06-02T10:47:23.2362877Z         },
2026-06-02T10:47:23.2362988Z         "impl": {
2026-06-02T10:47:23.2363120Z           "complete": false,
2026-06-02T10:47:23.2363235Z           "evidence": []
2026-06-02T10:47:23.2363349Z         },
2026-06-02T10:47:23.2363463Z         "int": {
2026-06-02T10:47:23.2363582Z           "complete": false,
2026-06-02T10:47:23.2363705Z           "evidence": []
2026-06-02T10:47:23.2363811Z         },
2026-06-02T10:47:23.2363922Z         "unit": {
2026-06-02T10:47:23.2364041Z           "complete": false,
2026-06-02T10:47:23.2364160Z           "evidence": []
2026-06-02T10:47:23.2364278Z         }
2026-06-02T10:47:23.2364390Z       }
2026-06-02T10:47:23.2364498Z     },
2026-06-02T10:47:23.2364612Z     {
2026-06-02T10:47:23.2364739Z       "id": "REQ-INST-11",
2026-06-02T10:47:23.2365046Z       "title": "spt rename <id> rippled to all instances (collision-checked, 6.5-reconciled)",
2026-06-02T10:47:23.2365185Z       "requiredStages": [],
2026-06-02T10:47:23.2365300Z       "stages": {
2026-06-02T10:47:23.2365411Z         "doc": {
2026-06-02T10:47:23.2365539Z           "complete": false,
2026-06-02T10:47:23.2365655Z           "evidence": []
2026-06-02T10:47:23.2365771Z         },
2026-06-02T10:47:23.2365881Z         "impl": {
2026-06-02T10:47:23.2366012Z           "complete": false,
2026-06-02T10:47:23.2366138Z           "evidence": []
2026-06-02T10:47:23.2366245Z         },
2026-06-02T10:47:23.2366361Z         "int": {
2026-06-02T10:47:23.2366480Z           "complete": false,
2026-06-02T10:47:23.2366604Z           "evidence": []
2026-06-02T10:47:23.2366710Z         },
2026-06-02T10:47:23.2366831Z         "unit": {
2026-06-02T10:47:23.2366959Z           "complete": false,
2026-06-02T10:47:23.2367083Z           "evidence": []
2026-06-02T10:47:23.2367191Z         }
2026-06-02T10:47:23.2367295Z       }
2026-06-02T10:47:23.2367568Z     },
2026-06-02T10:47:23.2367675Z     {
2026-06-02T10:47:23.2367806Z       "id": "REQ-INST-12",
2026-06-02T10:47:23.2368203Z       "title": "Endpoint visibility per-(endpoint,subnet): excluded semantics, OR-of-defaults + override, gates sync",
2026-06-02T10:47:23.2368330Z       "requiredStages": [],
2026-06-02T10:47:23.2368445Z       "stages": {
2026-06-02T10:47:23.2368558Z         "doc": {
2026-06-02T10:47:23.2368685Z           "complete": false,
2026-06-02T10:47:23.2368801Z           "evidence": []
2026-06-02T10:47:23.2368914Z         },
2026-06-02T10:47:23.2369034Z         "impl": {
2026-06-02T10:47:23.2369155Z           "complete": false,
2026-06-02T10:47:23.2369279Z           "evidence": []
2026-06-02T10:47:23.2369384Z         },
2026-06-02T10:47:23.2369500Z         "int": {
2026-06-02T10:47:23.2369619Z           "complete": false,
2026-06-02T10:47:23.2369754Z           "evidence": []
2026-06-02T10:47:23.2369866Z         },
2026-06-02T10:47:23.2369976Z         "unit": {
2026-06-02T10:47:23.2370111Z           "complete": false,
2026-06-02T10:47:23.2370229Z           "evidence": []
2026-06-02T10:47:23.2370344Z         }
2026-06-02T10:47:23.2370451Z       }
2026-06-02T10:47:23.2370564Z     },
2026-06-02T10:47:23.2370673Z     {
2026-06-02T10:47:23.2370798Z       "id": "REQ-INST-13",
2026-06-02T10:47:23.2371053Z       "title": "Subnet-exclusive sync + per-endpoint subnet-membership list",
2026-06-02T10:47:23.2371181Z       "requiredStages": [],
2026-06-02T10:47:23.2371300Z       "stages": {
2026-06-02T10:47:23.2371410Z         "doc": {
2026-06-02T10:47:23.2371542Z           "complete": false,
2026-06-02T10:47:23.2371667Z           "evidence": []
2026-06-02T10:47:23.2371774Z         },
2026-06-02T10:47:23.2371891Z         "impl": {
2026-06-02T10:47:23.2372010Z           "complete": false,
2026-06-02T10:47:23.2372133Z           "evidence": []
2026-06-02T10:47:23.2372238Z         },
2026-06-02T10:47:23.2372494Z         "int": {
2026-06-02T10:47:23.2372624Z           "complete": false,
2026-06-02T10:47:23.2372866Z           "evidence": []
2026-06-02T10:47:23.2372981Z         },
2026-06-02T10:47:23.2373090Z         "unit": {
2026-06-02T10:47:23.2373218Z           "complete": false,
2026-06-02T10:47:23.2373334Z           "evidence": []
2026-06-02T10:47:23.2373444Z         }
2026-06-02T10:47:23.2373559Z       }
2026-06-02T10:47:23.2373666Z     },
2026-06-02T10:47:23.2373774Z     {
2026-06-02T10:47:23.2373896Z       "id": "REQ-INST-14",
2026-06-02T10:47:23.2374404Z       "title": "Resource advertisement (subnet resource registry): free-text blurb, both-authored, registry projection, visibility/whitelist-gated",
2026-06-02T10:47:23.2374527Z       "requiredStages": [],
2026-06-02T10:47:23.2374645Z       "stages": {
2026-06-02T10:47:23.2374761Z         "doc": {
2026-06-02T10:47:23.2374882Z           "complete": false,
2026-06-02T10:47:23.2375006Z           "evidence": []
2026-06-02T10:47:23.2375121Z         },
2026-06-02T10:47:23.2375241Z         "impl": {
2026-06-02T10:47:23.2375364Z           "complete": false,
2026-06-02T10:47:23.2375498Z           "evidence": []
2026-06-02T10:47:23.2375612Z         },
2026-06-02T10:47:23.2375724Z         "int": {
2026-06-02T10:47:23.2375853Z           "complete": false,
2026-06-02T10:47:23.2375972Z           "evidence": []
2026-06-02T10:47:23.2376086Z         },
2026-06-02T10:47:23.2376197Z         "unit": {
2026-06-02T10:47:23.2376328Z           "complete": false,
2026-06-02T10:47:23.2376448Z           "evidence": []
2026-06-02T10:47:23.2376553Z         }
2026-06-02T10:47:23.2376664Z       }
2026-06-02T10:47:23.2376769Z     },
2026-06-02T10:47:23.2376880Z     {
2026-06-02T10:47:23.2377001Z       "id": "REQ-INST-2",
2026-06-02T10:47:23.2377181Z       "title": "Per-node files, synced Psyche mind",
2026-06-02T10:47:23.2377432Z       "requiredStages": [],
2026-06-02T10:47:23.2377547Z       "stages": {
2026-06-02T10:47:23.2377663Z         "doc": {
2026-06-02T10:47:23.2377793Z           "complete": false,
2026-06-02T10:47:23.2377915Z           "evidence": []
2026-06-02T10:47:23.2378029Z         },
2026-06-02T10:47:23.2378149Z         "impl": {
2026-06-02T10:47:23.2378278Z           "complete": false,
2026-06-02T10:47:23.2378392Z           "evidence": []
2026-06-02T10:47:23.2378503Z         },
2026-06-02T10:47:23.2378612Z         "int": {
2026-06-02T10:47:23.2378738Z           "complete": false,
2026-06-02T10:47:23.2378853Z           "evidence": []
2026-06-02T10:47:23.2378967Z         },
2026-06-02T10:47:23.2379082Z         "unit": {
2026-06-02T10:47:23.2379202Z           "complete": false,
2026-06-02T10:47:23.2379323Z           "evidence": []
2026-06-02T10:47:23.2379430Z         }
2026-06-02T10:47:23.2379544Z       }
2026-06-02T10:47:23.2379650Z     },
2026-06-02T10:47:23.2379762Z     {
2026-06-02T10:47:23.2379883Z       "id": "REQ-INST-3",
2026-06-02T10:47:23.2380104Z       "title": "Dormant (warm) / suspended (cold) resting states",
2026-06-02T10:47:23.2380241Z       "requiredStages": [],
2026-06-02T10:47:23.2380354Z       "stages": {
2026-06-02T10:47:23.2380470Z         "doc": {
2026-06-02T10:47:23.2380600Z           "complete": false,
2026-06-02T10:47:23.2380724Z           "evidence": []
2026-06-02T10:47:23.2380829Z         },
2026-06-02T10:47:23.2380947Z         "impl": {
2026-06-02T10:47:23.2381078Z           "complete": false,
2026-06-02T10:47:23.2381194Z           "evidence": []
2026-06-02T10:47:23.2381308Z         },
2026-06-02T10:47:23.2381417Z         "int": {
2026-06-02T10:47:23.2381545Z           "complete": false,
2026-06-02T10:47:23.2381662Z           "evidence": []
2026-06-02T10:47:23.2381776Z         },
2026-06-02T10:47:23.2381894Z         "unit": {
2026-06-02T10:47:23.2382014Z           "complete": false,
2026-06-02T10:47:23.2382138Z           "evidence": []
2026-06-02T10:47:23.2382244Z         }
2026-06-02T10:47:23.2382354Z       }
2026-06-02T10:47:23.2382457Z     },
2026-06-02T10:47:23.2382570Z     {
2026-06-02T10:47:23.2382693Z       "id": "REQ-INST-4",
2026-06-02T10:47:23.2383069Z       "title": "active to dormant/suspended fires a transition echo commune",
2026-06-02T10:47:23.2383317Z       "requiredStages": [],
2026-06-02T10:47:23.2383429Z       "stages": {
2026-06-02T10:47:23.2383550Z         "doc": {
2026-06-02T10:47:23.2383673Z           "complete": false,
2026-06-02T10:47:23.2383801Z           "evidence": []
2026-06-02T10:47:23.2383911Z         },
2026-06-02T10:47:23.2384022Z         "impl": {
2026-06-02T10:47:23.2384152Z           "complete": false,
2026-06-02T10:47:23.2384271Z           "evidence": []
2026-06-02T10:47:23.2384384Z         },
2026-06-02T10:47:23.2384491Z         "int": {
2026-06-02T10:47:23.2384618Z           "complete": false,
2026-06-02T10:47:23.2384744Z           "evidence": []
2026-06-02T10:47:23.2384848Z         },
2026-06-02T10:47:23.2384969Z         "unit": {
2026-06-02T10:47:23.2385088Z           "complete": false,
2026-06-02T10:47:23.2385212Z           "evidence": []
2026-06-02T10:47:23.2385317Z         }
2026-06-02T10:47:23.2385442Z       }
2026-06-02T10:47:23.2385553Z     },
2026-06-02T10:47:23.2385658Z     {
2026-06-02T10:47:23.2385793Z       "id": "REQ-INST-5",
2026-06-02T10:47:23.2386035Z       "title": "Two-tier context sync (live to all, project to same-project)",
2026-06-02T10:47:23.2386169Z       "requiredStages": [],
2026-06-02T10:47:23.2386283Z       "stages": {
2026-06-02T10:47:23.2386403Z         "doc": {
2026-06-02T10:47:23.2386531Z           "complete": false,
2026-06-02T10:47:23.2386648Z           "evidence": []
2026-06-02T10:47:23.2386764Z         },
2026-06-02T10:47:23.2386874Z         "impl": {
2026-06-02T10:47:23.2387004Z           "complete": false,
2026-06-02T10:47:23.2387119Z           "evidence": []
2026-06-02T10:47:23.2387233Z         },
2026-06-02T10:47:23.2387573Z         "int": {
2026-06-02T10:47:23.2387758Z           "complete": false,
2026-06-02T10:47:23.2387887Z           "evidence": []
2026-06-02T10:47:23.2387996Z         },
2026-06-02T10:47:23.2388112Z         "unit": {
2026-06-02T10:47:23.2388243Z           "complete": false,
2026-06-02T10:47:23.2388368Z           "evidence": []
2026-06-02T10:47:23.2388491Z         }
2026-06-02T10:47:23.2388596Z       }
2026-06-02T10:47:23.2388709Z     },
2026-06-02T10:47:23.2388814Z     {
2026-06-02T10:47:23.2388941Z       "id": "REQ-INST-6",
2026-06-02T10:47:23.2389191Z       "title": "Deferred messages not delivered to dormant/suspended instances",
2026-06-02T10:47:23.2389321Z       "requiredStages": [],
2026-06-02T10:47:23.2389439Z       "stages": {
2026-06-02T10:47:23.2389551Z         "doc": {
2026-06-02T10:47:23.2389674Z           "complete": false,
2026-06-02T10:47:23.2389788Z           "evidence": []
2026-06-02T10:47:23.2389900Z         },
2026-06-02T10:47:23.2390010Z         "impl": {
2026-06-02T10:47:23.2390135Z           "complete": false,
2026-06-02T10:47:23.2390254Z           "evidence": []
2026-06-02T10:47:23.2390359Z         },
2026-06-02T10:47:23.2390474Z         "int": {
2026-06-02T10:47:23.2390596Z           "complete": false,
2026-06-02T10:47:23.2390730Z           "evidence": []
2026-06-02T10:47:23.2390835Z         },
2026-06-02T10:47:23.2390958Z         "unit": {
2026-06-02T10:47:23.2391094Z           "complete": false,
2026-06-02T10:47:23.2391210Z           "evidence": []
2026-06-02T10:47:23.2391324Z         }
2026-06-02T10:47:23.2391431Z       }
2026-06-02T10:47:23.2391546Z     },
2026-06-02T10:47:23.2391652Z     {
2026-06-02T10:47:23.2391779Z       "id": "REQ-INST-7",
2026-06-02T10:47:23.2391982Z       "title": "Subnet registry + bare-id resolution policy",
2026-06-02T10:47:23.2392108Z       "requiredStages": [],
2026-06-02T10:47:23.2392227Z       "stages": {
2026-06-02T10:47:23.2392335Z         "doc": {
2026-06-02T10:47:23.2392463Z           "complete": false,
2026-06-02T10:47:23.2392581Z           "evidence": []
2026-06-02T10:47:23.2392697Z         },
2026-06-02T10:47:23.2392815Z         "impl": {
2026-06-02T10:47:23.2392936Z           "complete": true,
2026-06-02T10:47:23.2393061Z           "evidence": [
2026-06-02T10:47:23.2393168Z             {
2026-06-02T10:47:23.2393498Z               "path": "crates/spt-store/src/registry.rs",
2026-06-02T10:47:23.2393732Z               "line": 117
2026-06-02T10:47:23.2393851Z             }
2026-06-02T10:47:23.2393969Z           ]
2026-06-02T10:47:23.2394077Z         },
2026-06-02T10:47:23.2394191Z         "int": {
2026-06-02T10:47:23.2394310Z           "complete": false,
2026-06-02T10:47:23.2394439Z           "evidence": []
2026-06-02T10:47:23.2394546Z         },
2026-06-02T10:47:23.2394667Z         "unit": {
2026-06-02T10:47:23.2394795Z           "complete": false,
2026-06-02T10:47:23.2394912Z           "evidence": []
2026-06-02T10:47:23.2395026Z         }
2026-06-02T10:47:23.2395131Z       }
2026-06-02T10:47:23.2395241Z     },
2026-06-02T10:47:23.2395343Z     {
2026-06-02T10:47:23.2395467Z       "id": "REQ-INST-8",
2026-06-02T10:47:23.2395686Z       "title": "Remote-control mode distinct from local operation",
2026-06-02T10:47:23.2395817Z       "requiredStages": [],
2026-06-02T10:47:23.2395935Z       "stages": {
2026-06-02T10:47:23.2396052Z         "doc": {
2026-06-02T10:47:23.2396182Z           "complete": false,
2026-06-02T10:47:23.2396304Z           "evidence": []
2026-06-02T10:47:23.2396418Z         },
2026-06-02T10:47:23.2396536Z         "impl": {
2026-06-02T10:47:23.2396654Z           "complete": false,
2026-06-02T10:47:23.2396778Z           "evidence": []
2026-06-02T10:47:23.2396881Z         },
2026-06-02T10:47:23.2397000Z         "int": {
2026-06-02T10:47:23.2397120Z           "complete": false,
2026-06-02T10:47:23.2397248Z           "evidence": []
2026-06-02T10:47:23.2397556Z         },
2026-06-02T10:47:23.2397670Z         "unit": {
2026-06-02T10:47:23.2397800Z           "complete": false,
2026-06-02T10:47:23.2397916Z           "evidence": []
2026-06-02T10:47:23.2398027Z         }
2026-06-02T10:47:23.2398134Z       }
2026-06-02T10:47:23.2398245Z     },
2026-06-02T10:47:23.2398356Z     {
2026-06-02T10:47:23.2398474Z       "id": "REQ-INST-9",
2026-06-02T10:47:23.2398737Z       "title": "Multi-subnet membership (same-user N subnets; cross-user seam)",
2026-06-02T10:47:23.2398860Z       "requiredStages": [],
2026-06-02T10:47:23.2398984Z       "stages": {
2026-06-02T10:47:23.2399094Z         "doc": {
2026-06-02T10:47:23.2399227Z           "complete": false,
2026-06-02T10:47:23.2399350Z           "evidence": []
2026-06-02T10:47:23.2399459Z         },
2026-06-02T10:47:23.2399574Z         "impl": {
2026-06-02T10:47:23.2399694Z           "complete": false,
2026-06-02T10:47:23.2399820Z           "evidence": []
2026-06-02T10:47:23.2399926Z         },
2026-06-02T10:47:23.2400040Z         "int": {
2026-06-02T10:47:23.2400164Z           "complete": false,
2026-06-02T10:47:23.2400281Z           "evidence": []
2026-06-02T10:47:23.2400396Z         },
2026-06-02T10:47:23.2400507Z         "unit": {
2026-06-02T10:47:23.2400636Z           "complete": false,
2026-06-02T10:47:23.2400753Z           "evidence": []
2026-06-02T10:47:23.2400867Z         }
2026-06-02T10:47:23.2400980Z       }
2026-06-02T10:47:23.2401087Z     },
2026-06-02T10:47:23.2401205Z     {
2026-06-02T10:47:23.2401329Z       "id": "REQ-INSTALL-1",
2026-06-02T10:47:23.2401601Z       "title": "Two install paths; signed one-line script; OS-service registration",
2026-06-02T10:47:23.2401726Z       "requiredStages": [],
2026-06-02T10:47:23.2401845Z       "stages": {
2026-06-02T10:47:23.2401959Z         "doc": {
2026-06-02T10:47:23.2402079Z           "complete": false,
2026-06-02T10:47:23.2402203Z           "evidence": []
2026-06-02T10:47:23.2402311Z         },
2026-06-02T10:47:23.2402430Z         "impl": {
2026-06-02T10:47:23.2402551Z           "complete": false,
2026-06-02T10:47:23.2402673Z           "evidence": []
2026-06-02T10:47:23.2402782Z         },
2026-06-02T10:47:23.2402894Z         "int": {
2026-06-02T10:47:23.2403017Z           "complete": false,
2026-06-02T10:47:23.2403132Z           "evidence": []
2026-06-02T10:47:23.2403247Z         },
2026-06-02T10:47:23.2403355Z         "unit": {
2026-06-02T10:47:23.2403483Z           "complete": false,
2026-06-02T10:47:23.2403755Z           "evidence": []
2026-06-02T10:47:23.2403866Z         }
2026-06-02T10:47:23.2403981Z       }
2026-06-02T10:47:23.2404239Z     },
2026-06-02T10:47:23.2404347Z     {
2026-06-02T10:47:23.2404469Z       "id": "REQ-INSTALL-2",
2026-06-02T10:47:23.2404672Z       "title": "Marketplace-repackaging-friendly install",
2026-06-02T10:47:23.2404807Z       "requiredStages": [],
2026-06-02T10:47:23.2404922Z       "stages": {
2026-06-02T10:47:23.2405040Z         "doc": {
2026-06-02T10:47:23.2405162Z           "complete": false,
2026-06-02T10:47:23.2405284Z           "evidence": []
2026-06-02T10:47:23.2405393Z         },
2026-06-02T10:47:23.2405508Z         "impl": {
2026-06-02T10:47:23.2405636Z           "complete": false,
2026-06-02T10:47:23.2405753Z           "evidence": []
2026-06-02T10:47:23.2405863Z         },
2026-06-02T10:47:23.2405971Z         "int": {
2026-06-02T10:47:23.2406097Z           "complete": false,
2026-06-02T10:47:23.2406215Z           "evidence": []
2026-06-02T10:47:23.2406329Z         },
2026-06-02T10:47:23.2406448Z         "unit": {
2026-06-02T10:47:23.2406582Z           "complete": false,
2026-06-02T10:47:23.2406718Z           "evidence": []
2026-06-02T10:47:23.2406825Z         }
2026-06-02T10:47:23.2406940Z       }
2026-06-02T10:47:23.2407046Z     },
2026-06-02T10:47:23.2407159Z     {
2026-06-02T10:47:23.2407282Z       "id": "REQ-INSTALL-3",
2026-06-02T10:47:23.2407594Z       "title": "Idempotent + interactive-optional first run",
2026-06-02T10:47:23.2407727Z       "requiredStages": [],
2026-06-02T10:47:23.2407836Z       "stages": {
2026-06-02T10:47:23.2407954Z         "doc": {
2026-06-02T10:47:23.2408076Z           "complete": false,
2026-06-02T10:47:23.2408201Z           "evidence": []
2026-06-02T10:47:23.2408309Z         },
2026-06-02T10:47:23.2408430Z         "impl": {
2026-06-02T10:47:23.2408556Z           "complete": false,
2026-06-02T10:47:23.2408673Z           "evidence": []
2026-06-02T10:47:23.2408787Z         },
2026-06-02T10:47:23.2408897Z         "int": {
2026-06-02T10:47:23.2409036Z           "complete": false,
2026-06-02T10:47:23.2409154Z           "evidence": []
2026-06-02T10:47:23.2409275Z         },
2026-06-02T10:47:23.2409390Z         "unit": {
2026-06-02T10:47:23.2409509Z           "complete": false,
2026-06-02T10:47:23.2409635Z           "evidence": []
2026-06-02T10:47:23.2409741Z         }
2026-06-02T10:47:23.2409859Z       }
2026-06-02T10:47:23.2409961Z     },
2026-06-02T10:47:23.2410074Z     {
2026-06-02T10:47:23.2410207Z       "id": "REQ-MANIFEST-1",
2026-06-02T10:47:23.2410464Z       "title": "Per-adapter manifest with adapter_name and min_spt_core_version",
2026-06-02T10:47:23.2410593Z       "requiredStages": [
2026-06-02T10:47:23.2410702Z         "doc",
2026-06-02T10:47:23.2410820Z         "impl",
2026-06-02T10:47:23.2410930Z         "unit"
2026-06-02T10:47:23.2411042Z       ],
2026-06-02T10:47:23.2411159Z       "stages": {
2026-06-02T10:47:23.2411271Z         "doc": {
2026-06-02T10:47:23.2411401Z           "complete": true,
2026-06-02T10:47:23.2411527Z           "evidence": [
2026-06-02T10:47:23.2411646Z             {
2026-06-02T10:47:23.2411788Z               "path": "docs/MANIFEST.md",
2026-06-02T10:47:23.2411919Z               "line": 19
2026-06-02T10:47:23.2412036Z             }
2026-06-02T10:47:23.2412144Z           ]
2026-06-02T10:47:23.2412257Z         },
2026-06-02T10:47:23.2412368Z         "impl": {
2026-06-02T10:47:23.2412494Z           "complete": true,
2026-06-02T10:47:23.2412609Z           "evidence": [
2026-06-02T10:47:23.2412726Z             {
2026-06-02T10:47:23.2412910Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-02T10:47:23.2413025Z               "line": 18
2026-06-02T10:47:23.2413145Z             }
2026-06-02T10:47:23.2413254Z           ]
2026-06-02T10:47:23.2413372Z         },
2026-06-02T10:47:23.2413485Z         "int": {
2026-06-02T10:47:23.2413615Z           "complete": false,
2026-06-02T10:47:23.2413739Z           "evidence": []
2026-06-02T10:47:23.2413846Z         },
2026-06-02T10:47:23.2413963Z         "unit": {
2026-06-02T10:47:23.2414225Z           "complete": true,
2026-06-02T10:47:23.2414351Z           "evidence": [
2026-06-02T10:47:23.2414573Z             {
2026-06-02T10:47:23.2414744Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-02T10:47:23.2414867Z               "line": 547
2026-06-02T10:47:23.2414979Z             },
2026-06-02T10:47:23.2415093Z             {
2026-06-02T10:47:23.2415256Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-02T10:47:23.2415383Z               "line": 574
2026-06-02T10:47:23.2415491Z             },
2026-06-02T10:47:23.2415610Z             {
2026-06-02T10:47:23.2415775Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-02T10:47:23.2415892Z               "line": 586
2026-06-02T10:47:23.2416007Z             },
2026-06-02T10:47:23.2416114Z             {
2026-06-02T10:47:23.2416283Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-02T10:47:23.2416397Z               "line": 594
2026-06-02T10:47:23.2416508Z             },
2026-06-02T10:47:23.2416630Z             {
2026-06-02T10:47:23.2416789Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-02T10:47:23.2416917Z               "line": 611
2026-06-02T10:47:23.2417027Z             },
2026-06-02T10:47:23.2417143Z             {
2026-06-02T10:47:23.2417480Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-02T10:47:23.2417646Z               "line": 625
2026-06-02T10:47:23.2417762Z             },
2026-06-02T10:47:23.2417871Z             {
2026-06-02T10:47:23.2418055Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-02T10:47:23.2418173Z               "line": 640
2026-06-02T10:47:23.2418292Z             },
2026-06-02T10:47:23.2418405Z             {
2026-06-02T10:47:23.2418565Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-02T10:47:23.2418691Z               "line": 655
2026-06-02T10:47:23.2418797Z             },
2026-06-02T10:47:23.2418914Z             {
2026-06-02T10:47:23.2419086Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-02T10:47:23.2419218Z               "line": 670
2026-06-02T10:47:23.2419338Z             },
2026-06-02T10:47:23.2419445Z             {
2026-06-02T10:47:23.2419613Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-02T10:47:23.2419729Z               "line": 681
2026-06-02T10:47:23.2419842Z             }
2026-06-02T10:47:23.2419948Z           ]
2026-06-02T10:47:23.2420062Z         }
2026-06-02T10:47:23.2420175Z       }
2026-06-02T10:47:23.2420282Z     },
2026-06-02T10:47:23.2420395Z     {
2026-06-02T10:47:23.2420520Z       "id": "REQ-MIGRATE-1",
2026-06-02T10:47:23.2420769Z       "title": "Auto-detect and migrate a legacy claude_skill_owl install",
2026-06-02T10:47:23.2420896Z       "requiredStages": [],
2026-06-02T10:47:23.2421020Z       "stages": {
2026-06-02T10:47:23.2421140Z         "doc": {
2026-06-02T10:47:23.2421265Z           "complete": false,
2026-06-02T10:47:23.2421389Z           "evidence": []
2026-06-02T10:47:23.2421495Z         },
2026-06-02T10:47:23.2421619Z         "impl": {
2026-06-02T10:47:23.2421738Z           "complete": false,
2026-06-02T10:47:23.2421871Z           "evidence": []
2026-06-02T10:47:23.2421982Z         },
2026-06-02T10:47:23.2422091Z         "int": {
2026-06-02T10:47:23.2422222Z           "complete": false,
2026-06-02T10:47:23.2422340Z           "evidence": []
2026-06-02T10:47:23.2422452Z         },
2026-06-02T10:47:23.2422563Z         "unit": {
2026-06-02T10:47:23.2422694Z           "complete": false,
2026-06-02T10:47:23.2422821Z           "evidence": []
2026-06-02T10:47:23.2422927Z         }
2026-06-02T10:47:23.2423041Z       }
2026-06-02T10:47:23.2423146Z     },
2026-06-02T10:47:23.2423256Z     {
2026-06-02T10:47:23.2423381Z       "id": "REQ-MSG-1",
2026-06-02T10:47:23.2423995Z       "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__)",
2026-06-02T10:47:23.2424126Z       "requiredStages": [
2026-06-02T10:47:23.2424384Z         "impl",
2026-06-02T10:47:23.2424504Z         "unit",
2026-06-02T10:47:23.2424759Z         "int"
2026-06-02T10:47:23.2424874Z       ],
2026-06-02T10:47:23.2424985Z       "stages": {
2026-06-02T10:47:23.2425104Z         "doc": {
2026-06-02T10:47:23.2425236Z           "complete": false,
2026-06-02T10:47:23.2425355Z           "evidence": []
2026-06-02T10:47:23.2425468Z         },
2026-06-02T10:47:23.2425581Z         "impl": {
2026-06-02T10:47:23.2425708Z           "complete": true,
2026-06-02T10:47:23.2425822Z           "evidence": [
2026-06-02T10:47:23.2425939Z             {
2026-06-02T10:47:23.2426111Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-02T10:47:23.2426226Z               "line": 28
2026-06-02T10:47:23.2426342Z             },
2026-06-02T10:47:23.2426449Z             {
2026-06-02T10:47:23.2426653Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-02T10:47:23.2426770Z               "line": 90
2026-06-02T10:47:23.2426884Z             },
2026-06-02T10:47:23.2427006Z             {
2026-06-02T10:47:23.2427158Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-02T10:47:23.2427295Z               "line": 133
2026-06-02T10:47:23.2427631Z             },
2026-06-02T10:47:23.2427792Z             {
2026-06-02T10:47:23.2427989Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-02T10:47:23.2428116Z               "line": 158
2026-06-02T10:47:23.2428233Z             },
2026-06-02T10:47:23.2428340Z             {
2026-06-02T10:47:23.2428507Z               "path": "crates/spt-msg/src/listener.rs",
2026-06-02T10:47:23.2428624Z               "line": 18
2026-06-02T10:47:23.2428741Z             },
2026-06-02T10:47:23.2428849Z             {
2026-06-02T10:47:23.2429013Z               "path": "crates/spt-msg/src/ring.rs",
2026-06-02T10:47:23.2429138Z               "line": 13
2026-06-02T10:47:23.2429244Z             },
2026-06-02T10:47:23.2429360Z             {
2026-06-02T10:47:23.2429504Z               "path": "crates/spt-msg/src/ring.rs",
2026-06-02T10:47:23.2429636Z               "line": 62
2026-06-02T10:47:23.2429744Z             },
2026-06-02T10:47:23.2429868Z             {
2026-06-02T10:47:23.2430021Z               "path": "crates/spt-msg/src/wire.rs",
2026-06-02T10:47:23.2430138Z               "line": 10
2026-06-02T10:47:23.2430275Z             }
2026-06-02T10:47:23.2430382Z           ]
2026-06-02T10:47:23.2430498Z         },
2026-06-02T10:47:23.2430609Z         "int": {
2026-06-02T10:47:23.2430743Z           "complete": true,
2026-06-02T10:47:23.2430868Z           "evidence": [
2026-06-02T10:47:23.2430976Z             {
2026-06-02T10:47:23.2431176Z               "path": "crates/spt-msg/tests/killer_quickstart.rs",
2026-06-02T10:47:23.2431292Z               "line": 9
2026-06-02T10:47:23.2431406Z             },
2026-06-02T10:47:23.2431513Z             {
2026-06-02T10:47:23.2431699Z               "path": "crates/spt-msg/tests/killer_quickstart.rs",
2026-06-02T10:47:23.2431822Z               "line": 66
2026-06-02T10:47:23.2431931Z             },
2026-06-02T10:47:23.2432050Z             {
2026-06-02T10:47:23.2432225Z               "path": "crates/spt-msg/tests/killer_quickstart.rs",
2026-06-02T10:47:23.2432358Z               "line": 116
2026-06-02T10:47:23.2432472Z             }
2026-06-02T10:47:23.2432580Z           ]
2026-06-02T10:47:23.2432693Z         },
2026-06-02T10:47:23.2432804Z         "unit": {
2026-06-02T10:47:23.2432933Z           "complete": true,
2026-06-02T10:47:23.2433051Z           "evidence": [
2026-06-02T10:47:23.2433164Z             {
2026-06-02T10:47:23.2433323Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-02T10:47:23.2433442Z               "line": 186
2026-06-02T10:47:23.2433556Z             },
2026-06-02T10:47:23.2433662Z             {
2026-06-02T10:47:23.2433819Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-02T10:47:23.2433933Z               "line": 215
2026-06-02T10:47:23.2434047Z             },
2026-06-02T10:47:23.2434160Z             {
2026-06-02T10:47:23.2434454Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-02T10:47:23.2434584Z               "line": 260
2026-06-02T10:47:23.2434809Z             },
2026-06-02T10:47:23.2434921Z             {
2026-06-02T10:47:23.2435073Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-02T10:47:23.2435199Z               "line": 283
2026-06-02T10:47:23.2435318Z             },
2026-06-02T10:47:23.2435423Z             {
2026-06-02T10:47:23.2435576Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-02T10:47:23.2435691Z               "line": 305
2026-06-02T10:47:23.2435807Z             },
2026-06-02T10:47:23.2435911Z             {
2026-06-02T10:47:23.2436075Z               "path": "crates/spt-msg/src/listener.rs",
2026-06-02T10:47:23.2436197Z               "line": 203
2026-06-02T10:47:23.2436306Z             },
2026-06-02T10:47:23.2436421Z             {
2026-06-02T10:47:23.2436577Z               "path": "crates/spt-msg/src/listener.rs",
2026-06-02T10:47:23.2436701Z               "line": 233
2026-06-02T10:47:23.2436811Z             },
2026-06-02T10:47:23.2436936Z             {
2026-06-02T10:47:23.2437092Z               "path": "crates/spt-msg/src/listener.rs",
2026-06-02T10:47:23.2437215Z               "line": 247
2026-06-02T10:47:23.2437481Z             },
2026-06-02T10:47:23.2437590Z             {
2026-06-02T10:47:23.2437754Z               "path": "crates/spt-msg/src/listener.rs",
2026-06-02T10:47:23.2437874Z               "line": 259
2026-06-02T10:47:23.2437990Z             },
2026-06-02T10:47:23.2438101Z             {
2026-06-02T10:47:23.2438271Z               "path": "crates/spt-msg/src/ring.rs",
2026-06-02T10:47:23.2438399Z               "line": 159
2026-06-02T10:47:23.2438511Z             },
2026-06-02T10:47:23.2438624Z             {
2026-06-02T10:47:23.2438767Z               "path": "crates/spt-msg/src/ring.rs",
2026-06-02T10:47:23.2438892Z               "line": 236
2026-06-02T10:47:23.2439006Z             },
2026-06-02T10:47:23.2439112Z             {
2026-06-02T10:47:23.2439264Z               "path": "crates/spt-msg/src/wire.rs",
2026-06-02T10:47:23.2439389Z               "line": 68
2026-06-02T10:47:23.2439506Z             },
2026-06-02T10:47:23.2439624Z             {
2026-06-02T10:47:23.2439770Z               "path": "crates/spt-msg/src/wire.rs",
2026-06-02T10:47:23.2439895Z               "line": 74
2026-06-02T10:47:23.2440006Z             },
2026-06-02T10:47:23.2440118Z             {
2026-06-02T10:47:23.2440262Z               "path": "crates/spt-msg/src/wire.rs",
2026-06-02T10:47:23.2440388Z               "line": 80
2026-06-02T10:47:23.2440501Z             },
2026-06-02T10:47:23.2440610Z             {
2026-06-02T10:47:23.2440761Z               "path": "crates/spt-msg/src/wire.rs",
2026-06-02T10:47:23.2440880Z               "line": 99
2026-06-02T10:47:23.2440994Z             }
2026-06-02T10:47:23.2441101Z           ]
2026-06-02T10:47:23.2441219Z         }
2026-06-02T10:47:23.2441331Z       }
2026-06-02T10:47:23.2441443Z     },
2026-06-02T10:47:23.2441554Z     {
2026-06-02T10:47:23.2441672Z       "id": "REQ-MSG-2",
2026-06-02T10:47:23.2442058Z       "title": "spt binary CLI surface: send/ring/ready/poll/list/stop/whoami, stable arg shapes + exit codes",
2026-06-02T10:47:23.2442190Z       "requiredStages": [
2026-06-02T10:47:23.2442310Z         "impl",
2026-06-02T10:47:23.2442426Z         "unit"
2026-06-02T10:47:23.2442532Z       ],
2026-06-02T10:47:23.2442649Z       "stages": {
2026-06-02T10:47:23.2442760Z         "doc": {
2026-06-02T10:47:23.2442890Z           "complete": false,
2026-06-02T10:47:23.2443009Z           "evidence": []
2026-06-02T10:47:23.2443123Z         },
2026-06-02T10:47:23.2443242Z         "impl": {
2026-06-02T10:47:23.2443366Z           "complete": true,
2026-06-02T10:47:23.2443488Z           "evidence": [
2026-06-02T10:47:23.2443594Z             {
2026-06-02T10:47:23.2443750Z               "path": "crates/spt/src/cli.rs",
2026-06-02T10:47:23.2443866Z               "line": 11
2026-06-02T10:47:23.2443983Z             },
2026-06-02T10:47:23.2444095Z             {
2026-06-02T10:47:23.2444389Z               "path": "crates/spt/src/main.rs",
2026-06-02T10:47:23.2444511Z               "line": 8
2026-06-02T10:47:23.2444736Z             }
2026-06-02T10:47:23.2444851Z           ]
2026-06-02T10:47:23.2444955Z         },
2026-06-02T10:47:23.2445073Z         "int": {
2026-06-02T10:47:23.2445210Z           "complete": false,
2026-06-02T10:47:23.2445328Z           "evidence": []
2026-06-02T10:47:23.2445439Z         },
2026-06-02T10:47:23.2445548Z         "unit": {
2026-06-02T10:47:23.2445676Z           "complete": true,
2026-06-02T10:47:23.2445793Z           "evidence": [
2026-06-02T10:47:23.2445909Z             {
2026-06-02T10:47:23.2446062Z               "path": "crates/spt/src/cli.rs",
2026-06-02T10:47:23.2446183Z               "line": 297
2026-06-02T10:47:23.2446302Z             },
2026-06-02T10:47:23.2446408Z             {
2026-06-02T10:47:23.2446553Z               "path": "crates/spt/src/cli.rs",
2026-06-02T10:47:23.2446666Z               "line": 310
2026-06-02T10:47:23.2446784Z             },
2026-06-02T10:47:23.2446904Z             {
2026-06-02T10:47:23.2447041Z               "path": "crates/spt/src/cli.rs",
2026-06-02T10:47:23.2447171Z               "line": 319
2026-06-02T10:47:23.2447279Z             },
2026-06-02T10:47:23.2447509Z             {
2026-06-02T10:47:23.2447652Z               "path": "crates/spt/src/cli.rs",
2026-06-02T10:47:23.2447777Z               "line": 331
2026-06-02T10:47:23.2447889Z             }
2026-06-02T10:47:23.2447993Z           ]
2026-06-02T10:47:23.2448108Z         }
2026-06-02T10:47:23.2448214Z       }
2026-06-02T10:47:23.2448326Z     },
2026-06-02T10:47:23.2448430Z     {
2026-06-02T10:47:23.2448559Z       "id": "REQ-MSG-3",
2026-06-02T10:47:23.2449078Z       "title": "Ready-agent lifecycle: register perch (info.json + listener + registry address) on ready, drain spooled backlog on startup, clean teardown",
2026-06-02T10:47:23.2449205Z       "requiredStages": [
2026-06-02T10:47:23.2449323Z         "impl",
2026-06-02T10:47:23.2449435Z         "unit",
2026-06-02T10:47:23.2449553Z         "int"
2026-06-02T10:47:23.2449667Z       ],
2026-06-02T10:47:23.2449786Z       "stages": {
2026-06-02T10:47:23.2458059Z         "doc": {
2026-06-02T10:47:23.2458244Z           "complete": false,
2026-06-02T10:47:23.2458375Z           "evidence": []
2026-06-02T10:47:23.2458487Z         },
2026-06-02T10:47:23.2458608Z         "impl": {
2026-06-02T10:47:23.2458733Z           "complete": true,
2026-06-02T10:47:23.2458859Z           "evidence": [
2026-06-02T10:47:23.2458966Z             {
2026-06-02T10:47:23.2459156Z               "path": "crates/spt-msg/src/listener.rs",
2026-06-02T10:47:23.2459284Z               "line": 19
2026-06-02T10:47:23.2459393Z             },
2026-06-02T10:47:23.2459504Z             {
2026-06-02T10:47:23.2459668Z               "path": "crates/spt-msg/src/ready.rs",
2026-06-02T10:47:23.2459793Z               "line": 21
2026-06-02T10:47:23.2459901Z             },
2026-06-02T10:47:23.2460014Z             {
2026-06-02T10:47:23.2460167Z               "path": "crates/spt-msg/src/ready.rs",
2026-06-02T10:47:23.2460302Z               "line": 48
2026-06-02T10:47:23.2460418Z             },
2026-06-02T10:47:23.2460532Z             {
2026-06-02T10:47:23.2460690Z               "path": "crates/spt-msg/src/ready.rs",
2026-06-02T10:47:23.2460811Z               "line": 106
2026-06-02T10:47:23.2460928Z             }
2026-06-02T10:47:23.2461042Z           ]
2026-06-02T10:47:23.2461149Z         },
2026-06-02T10:47:23.2461265Z         "int": {
2026-06-02T10:47:23.2461391Z           "complete": true,
2026-06-02T10:47:23.2461516Z           "evidence": [
2026-06-02T10:47:23.2461624Z             {
2026-06-02T10:47:23.2461826Z               "path": "crates/spt-msg/tests/killer_quickstart.rs",
2026-06-02T10:47:23.2461946Z               "line": 10
2026-06-02T10:47:23.2462056Z             },
2026-06-02T10:47:23.2462169Z             {
2026-06-02T10:47:23.2462350Z               "path": "crates/spt-msg/tests/killer_quickstart.rs",
2026-06-02T10:47:23.2462470Z               "line": 66
2026-06-02T10:47:23.2462578Z             }
2026-06-02T10:47:23.2462886Z           ]
2026-06-02T10:47:23.2463002Z         },
2026-06-02T10:47:23.2463115Z         "unit": {
2026-06-02T10:47:23.2463366Z           "complete": true,
2026-06-02T10:47:23.2463482Z           "evidence": [
2026-06-02T10:47:23.2463602Z             {
2026-06-02T10:47:23.2463753Z               "path": "crates/spt-msg/src/ready.rs",
2026-06-02T10:47:23.2463874Z               "line": 160
2026-06-02T10:47:23.2463985Z             },
2026-06-02T10:47:23.2464092Z             {
2026-06-02T10:47:23.2464242Z               "path": "crates/spt-msg/src/ready.rs",
2026-06-02T10:47:23.2464357Z               "line": 179
2026-06-02T10:47:23.2464474Z             },
2026-06-02T10:47:23.2464582Z             {
2026-06-02T10:47:23.2464735Z               "path": "crates/spt-msg/src/ready.rs",
2026-06-02T10:47:23.2464852Z               "line": 198
2026-06-02T10:47:23.2464958Z             }
2026-06-02T10:47:23.2465072Z           ]
2026-06-02T10:47:23.2465182Z         }
2026-06-02T10:47:23.2465296Z       }
2026-06-02T10:47:23.2465409Z     },
2026-06-02T10:47:23.2465521Z     {
2026-06-02T10:47:23.2465644Z       "id": "REQ-NET-1",
2026-06-02T10:47:23.2465899Z       "title": "WAN messaging first-class, behind default-on net feature flag",
2026-06-02T10:47:23.2466031Z       "requiredStages": [],
2026-06-02T10:47:23.2466144Z       "stages": {
2026-06-02T10:47:23.2466264Z         "doc": {
2026-06-02T10:47:23.2466392Z           "complete": false,
2026-06-02T10:47:23.2466514Z           "evidence": []
2026-06-02T10:47:23.2466624Z         },
2026-06-02T10:47:23.2466734Z         "impl": {
2026-06-02T10:47:23.2466863Z           "complete": false,
2026-06-02T10:47:23.2466978Z           "evidence": []
2026-06-02T10:47:23.2467087Z         },
2026-06-02T10:47:23.2467194Z         "int": {
2026-06-02T10:47:23.2467442Z           "complete": false,
2026-06-02T10:47:23.2467567Z           "evidence": []
2026-06-02T10:47:23.2467674Z         },
2026-06-02T10:47:23.2467791Z         "unit": {
2026-06-02T10:47:23.2467918Z           "complete": false,
2026-06-02T10:47:23.2468048Z           "evidence": []
2026-06-02T10:47:23.2468158Z         }
2026-06-02T10:47:23.2468281Z       }
2026-06-02T10:47:23.2468391Z     },
2026-06-02T10:47:23.2468647Z     {
2026-06-02T10:47:23.2468833Z       "id": "REQ-NET-2",
2026-06-02T10:47:23.2469158Z       "title": "n0 relay default + self-host knob + plain-language disclosure",
2026-06-02T10:47:23.2469344Z       "requiredStages": [],
2026-06-02T10:47:23.2469493Z       "stages": {
2026-06-02T10:47:23.2469651Z         "doc": {
2026-06-02T10:47:23.2469834Z           "complete": false,
2026-06-02T10:47:23.2469999Z           "evidence": []
2026-06-02T10:47:23.2470161Z         },
2026-06-02T10:47:23.2470323Z         "impl": {
2026-06-02T10:47:23.2470505Z           "complete": false,
2026-06-02T10:47:23.2470675Z           "evidence": []
2026-06-02T10:47:23.2470834Z         },
2026-06-02T10:47:23.2470996Z         "int": {
2026-06-02T10:47:23.2471166Z           "complete": false,
2026-06-02T10:47:23.2471359Z           "evidence": []
2026-06-02T10:47:23.2471508Z         },
2026-06-02T10:47:23.2471671Z         "unit": {
2026-06-02T10:47:23.2471855Z           "complete": false,
2026-06-02T10:47:23.2472032Z           "evidence": []
2026-06-02T10:47:23.2472190Z         }
2026-06-02T10:47:23.2472339Z       }
2026-06-02T10:47:23.2472497Z     },
2026-06-02T10:47:23.2472643Z     {
2026-06-02T10:47:23.2472824Z       "id": "REQ-NET-3",
2026-06-02T10:47:23.2473166Z       "title": "Cross-node Psyche sync over P2P replaces gh-repo-sync",
2026-06-02T10:47:23.2473351Z       "requiredStages": [],
2026-06-02T10:47:23.2473530Z       "stages": {
2026-06-02T10:47:23.2473659Z         "doc": {
2026-06-02T10:47:23.2473790Z           "complete": false,
2026-06-02T10:47:23.2473907Z           "evidence": []
2026-06-02T10:47:23.2474021Z         },
2026-06-02T10:47:23.2474131Z         "impl": {
2026-06-02T10:47:23.2474264Z           "complete": false,
2026-06-02T10:47:23.2474386Z           "evidence": []
2026-06-02T10:47:23.2474493Z         },
2026-06-02T10:47:23.2474780Z         "int": {
2026-06-02T10:47:23.2474902Z           "complete": false,
2026-06-02T10:47:23.2475141Z           "evidence": []
2026-06-02T10:47:23.2475250Z         },
2026-06-02T10:47:23.2475365Z         "unit": {
2026-06-02T10:47:23.2475493Z           "complete": false,
2026-06-02T10:47:23.2475610Z           "evidence": []
2026-06-02T10:47:23.2475723Z         }
2026-06-02T10:47:23.2475828Z       }
2026-06-02T10:47:23.2475943Z     },
2026-06-02T10:47:23.2476047Z     {
2026-06-02T10:47:23.2476190Z       "id": "REQ-NODE-IDENTITY",
2026-06-02T10:47:23.2476520Z       "title": "Ed25519 identity primitive: keypair, detached sign/verify, stable pubkey<->hex",
2026-06-02T10:47:23.2476645Z       "requiredStages": [
2026-06-02T10:47:23.2476762Z         "impl",
2026-06-02T10:47:23.2476871Z         "unit"
2026-06-02T10:47:23.2476983Z       ],
2026-06-02T10:47:23.2477095Z       "stages": {
2026-06-02T10:47:23.2477213Z         "doc": {
2026-06-02T10:47:23.2477475Z           "complete": false,
2026-06-02T10:47:23.2477605Z           "evidence": []
2026-06-02T10:47:23.2477719Z         },
2026-06-02T10:47:23.2477842Z         "impl": {
2026-06-02T10:47:23.2477972Z           "complete": true,
2026-06-02T10:47:23.2478089Z           "evidence": [
2026-06-02T10:47:23.2478200Z             {
2026-06-02T10:47:23.2478393Z               "path": "crates/spt-proto/src/identity.rs",
2026-06-02T10:47:23.2478508Z               "line": 60
2026-06-02T10:47:23.2478621Z             },
2026-06-02T10:47:23.2478728Z             {
2026-06-02T10:47:23.2478899Z               "path": "crates/spt-proto/src/identity.rs",
2026-06-02T10:47:23.2479015Z               "line": 68
2026-06-02T10:47:23.2479144Z             },
2026-06-02T10:47:23.2479262Z             {
2026-06-02T10:47:23.2479422Z               "path": "crates/spt-proto/src/identity.rs",
2026-06-02T10:47:23.2479544Z               "line": 86
2026-06-02T10:47:23.2479651Z             },
2026-06-02T10:47:23.2479769Z             {
2026-06-02T10:47:23.2479955Z               "path": "crates/spt-proto/src/identity.rs",
2026-06-02T10:47:23.2480083Z               "line": 120
2026-06-02T10:47:23.2480206Z             },
2026-06-02T10:47:23.2480315Z             {
2026-06-02T10:47:23.2480475Z               "path": "crates/spt-proto/src/identity.rs",
2026-06-02T10:47:23.2480591Z               "line": 127
2026-06-02T10:47:23.2480707Z             },
2026-06-02T10:47:23.2480815Z             {
2026-06-02T10:47:23.2480984Z               "path": "crates/spt-proto/src/identity.rs",
2026-06-02T10:47:23.2481109Z               "line": 143
2026-06-02T10:47:23.2481234Z             }
2026-06-02T10:47:23.2481349Z           ]
2026-06-02T10:47:23.2481457Z         },
2026-06-02T10:47:23.2481573Z         "int": {
2026-06-02T10:47:23.2481697Z           "complete": false,
2026-06-02T10:47:23.2481823Z           "evidence": []
2026-06-02T10:47:23.2481935Z         },
2026-06-02T10:47:23.2482046Z         "unit": {
2026-06-02T10:47:23.2482174Z           "complete": true,
2026-06-02T10:47:23.2482290Z           "evidence": [
2026-06-02T10:47:23.2482413Z             {
2026-06-02T10:47:23.2482577Z               "path": "crates/spt-proto/src/identity.rs",
2026-06-02T10:47:23.2482706Z               "line": 199
2026-06-02T10:47:23.2482821Z             },
2026-06-02T10:47:23.2482929Z             {
2026-06-02T10:47:23.2483093Z               "path": "crates/spt-proto/src/identity.rs",
2026-06-02T10:47:23.2483210Z               "line": 218
2026-06-02T10:47:23.2483323Z             },
2026-06-02T10:47:23.2483438Z             {
2026-06-02T10:47:23.2483596Z               "path": "crates/spt-proto/src/identity.rs",
2026-06-02T10:47:23.2483718Z               "line": 232
2026-06-02T10:47:23.2483826Z             },
2026-06-02T10:47:23.2483938Z             {
2026-06-02T10:47:23.2484099Z               "path": "crates/spt-proto/src/identity.rs",
2026-06-02T10:47:23.2484226Z               "line": 248
2026-06-02T10:47:23.2484339Z             }
2026-06-02T10:47:23.2484446Z           ]
2026-06-02T10:47:23.2484560Z         }
2026-06-02T10:47:23.2484668Z       }
2026-06-02T10:47:23.2484940Z     },
2026-06-02T10:47:23.2485047Z     {
2026-06-02T10:47:23.2485296Z       "id": "REQ-NOTIF-1",
2026-06-02T10:47:23.2485795Z       "title": "Notification primitive: per-subnet replicated spool, seen/dismissed, resurface-at-boundary, subsumes update+consent prompts",
2026-06-02T10:47:23.2485924Z       "requiredStages": [],
2026-06-02T10:47:23.2486044Z       "stages": {
2026-06-02T10:47:23.2486155Z         "doc": {
2026-06-02T10:47:23.2486283Z           "complete": false,
2026-06-02T10:47:23.2486399Z           "evidence": []
2026-06-02T10:47:23.2486509Z         },
2026-06-02T10:47:23.2486622Z         "impl": {
2026-06-02T10:47:23.2486745Z           "complete": false,
2026-06-02T10:47:23.2486872Z           "evidence": []
2026-06-02T10:47:23.2486978Z         },
2026-06-02T10:47:23.2487096Z         "int": {
2026-06-02T10:47:23.2487217Z           "complete": false,
2026-06-02T10:47:23.2487457Z           "evidence": []
2026-06-02T10:47:23.2487571Z         },
2026-06-02T10:47:23.2487687Z         "unit": {
2026-06-02T10:47:23.2487816Z           "complete": false,
2026-06-02T10:47:23.2487941Z           "evidence": []
2026-06-02T10:47:23.2488052Z         }
2026-06-02T10:47:23.2488158Z       }
2026-06-02T10:47:23.2488269Z     },
2026-06-02T10:47:23.2488385Z     {
2026-06-02T10:47:23.2488512Z       "id": "REQ-NOTIF-2",
2026-06-02T10:47:23.2488884Z       "title": "spt notify (agent-issued subnet notif) + notif_command manifest seam (harness + shell adapters)",
2026-06-02T10:47:23.2489006Z       "requiredStages": [],
2026-06-02T10:47:23.2489125Z       "stages": {
2026-06-02T10:47:23.2489234Z         "doc": {
2026-06-02T10:47:23.2489362Z           "complete": false,
2026-06-02T10:47:23.2489482Z           "evidence": []
2026-06-02T10:47:23.2489587Z         },
2026-06-02T10:47:23.2489703Z         "impl": {
2026-06-02T10:47:23.2489824Z           "complete": false,
2026-06-02T10:47:23.2489946Z           "evidence": []
2026-06-02T10:47:23.2490053Z         },
2026-06-02T10:47:23.2490166Z         "int": {
2026-06-02T10:47:23.2490297Z           "complete": false,
2026-06-02T10:47:23.2490415Z           "evidence": []
2026-06-02T10:47:23.2490535Z         },
2026-06-02T10:47:23.2490643Z         "unit": {
2026-06-02T10:47:23.2490770Z           "complete": false,
2026-06-02T10:47:23.2490888Z           "evidence": []
2026-06-02T10:47:23.2491001Z         }
2026-06-02T10:47:23.2491112Z       }
2026-06-02T10:47:23.2491216Z     },
2026-06-02T10:47:23.2491328Z     {
2026-06-02T10:47:23.2491454Z       "id": "REQ-PAIR-1",
2026-06-02T10:47:23.2491613Z       "title": "TOTP-seeded SPAKE2 pairing",
2026-06-02T10:47:23.2491732Z       "requiredStages": [],
2026-06-02T10:47:23.2491852Z       "stages": {
2026-06-02T10:47:23.2491968Z         "doc": {
2026-06-02T10:47:23.2492090Z           "complete": false,
2026-06-02T10:47:23.2492214Z           "evidence": []
2026-06-02T10:47:23.2492319Z         },
2026-06-02T10:47:23.2492434Z         "impl": {
2026-06-02T10:47:23.2492553Z           "complete": false,
2026-06-02T10:47:23.2492682Z           "evidence": []
2026-06-02T10:47:23.2492795Z         },
2026-06-02T10:47:23.2492906Z         "int": {
2026-06-02T10:47:23.2493037Z           "complete": false,
2026-06-02T10:47:23.2493154Z           "evidence": []
2026-06-02T10:47:23.2493262Z         },
2026-06-02T10:47:23.2493373Z         "unit": {
2026-06-02T10:47:23.2493496Z           "complete": false,
2026-06-02T10:47:23.2493619Z           "evidence": []
2026-06-02T10:47:23.2493725Z         }
2026-06-02T10:47:23.2493837Z       }
2026-06-02T10:47:23.2493941Z     },
2026-06-02T10:47:23.2494052Z     {
2026-06-02T10:47:23.2494171Z       "id": "REQ-PAIR-2",
2026-06-02T10:47:23.2494379Z       "title": "Local trust store with TOFU + warn-on-change",
2026-06-02T10:47:23.2494513Z       "requiredStages": [],
2026-06-02T10:47:23.2494628Z       "stages": {
2026-06-02T10:47:23.2494745Z         "doc": {
2026-06-02T10:47:23.2494864Z           "complete": false,
2026-06-02T10:47:23.2494987Z           "evidence": []
2026-06-02T10:47:23.2495093Z         },
2026-06-02T10:47:23.2495397Z         "impl": {
2026-06-02T10:47:23.2495526Z           "complete": false,
2026-06-02T10:47:23.2495760Z           "evidence": []
2026-06-02T10:47:23.2495868Z         },
2026-06-02T10:47:23.2495975Z         "int": {
2026-06-02T10:47:23.2496099Z           "complete": false,
2026-06-02T10:47:23.2496217Z           "evidence": []
2026-06-02T10:47:23.2496326Z         },
2026-06-02T10:47:23.2496435Z         "unit": {
2026-06-02T10:47:23.2496562Z           "complete": false,
2026-06-02T10:47:23.2496681Z           "evidence": []
2026-06-02T10:47:23.2496784Z         }
2026-06-02T10:47:23.2496894Z       }
2026-06-02T10:47:23.2496998Z     },
2026-06-02T10:47:23.2497108Z     {
2026-06-02T10:47:23.2497227Z       "id": "REQ-PAIR-3",
2026-06-02T10:47:23.2497546Z       "title": "Fetch current pairing code from any paired node",
2026-06-02T10:47:23.2497677Z       "requiredStages": [],
2026-06-02T10:47:23.2497784Z       "stages": {
2026-06-02T10:47:23.2497895Z         "doc": {
2026-06-02T10:47:23.2498024Z           "complete": false,
2026-06-02T10:47:23.2498151Z           "evidence": []
2026-06-02T10:47:23.2498265Z         },
2026-06-02T10:47:23.2498385Z         "impl": {
2026-06-02T10:47:23.2498510Z           "complete": false,
2026-06-02T10:47:23.2498625Z           "evidence": []
2026-06-02T10:47:23.2498737Z         },
2026-06-02T10:47:23.2498845Z         "int": {
2026-06-02T10:47:23.2498976Z           "complete": false,
2026-06-02T10:47:23.2499092Z           "evidence": []
2026-06-02T10:47:23.2499206Z         },
2026-06-02T10:47:23.2499323Z         "unit": {
2026-06-02T10:47:23.2499442Z           "complete": false,
2026-06-02T10:47:23.2499561Z           "evidence": []
2026-06-02T10:47:23.2499666Z         }
2026-06-02T10:47:23.2499780Z       }
2026-06-02T10:47:23.2499884Z     },
2026-06-02T10:47:23.2499997Z     {
2026-06-02T10:47:23.2500124Z       "id": "REQ-PAIR-4",
2026-06-02T10:47:23.2500282Z       "title": "Subnet naming on first pairing",
2026-06-02T10:47:23.2500415Z       "requiredStages": [],
2026-06-02T10:47:23.2500536Z       "stages": {
2026-06-02T10:47:23.2500653Z         "doc": {
2026-06-02T10:47:23.2500782Z           "complete": false,
2026-06-02T10:47:23.2500906Z           "evidence": []
2026-06-02T10:47:23.2501013Z         },
2026-06-02T10:47:23.2501121Z         "impl": {
2026-06-02T10:47:23.2501249Z           "complete": false,
2026-06-02T10:47:23.2501366Z           "evidence": []
2026-06-02T10:47:23.2501482Z         },
2026-06-02T10:47:23.2501590Z         "int": {
2026-06-02T10:47:23.2501711Z           "complete": false,
2026-06-02T10:47:23.2501837Z           "evidence": []
2026-06-02T10:47:23.2501944Z         },
2026-06-02T10:47:23.2502059Z         "unit": {
2026-06-02T10:47:23.2502177Z           "complete": false,
2026-06-02T10:47:23.2502301Z           "evidence": []
2026-06-02T10:47:23.2502412Z         }
2026-06-02T10:47:23.2502519Z       }
2026-06-02T10:47:23.2502630Z     },
2026-06-02T10:47:23.2502733Z     {
2026-06-02T10:47:23.2502859Z       "id": "REQ-PAIR-5",
2026-06-02T10:47:23.2503279Z       "title": "Multi-subnet pairing: subnet-name discovery input, create-new-names-up-front, rendezvous-token hashing",
2026-06-02T10:47:23.2503418Z       "requiredStages": [],
2026-06-02T10:47:23.2503542Z       "stages": {
2026-06-02T10:47:23.2503654Z         "doc": {
2026-06-02T10:47:23.2503779Z           "complete": false,
2026-06-02T10:47:23.2503896Z           "evidence": []
2026-06-02T10:47:23.2504010Z         },
2026-06-02T10:47:23.2504120Z         "impl": {
2026-06-02T10:47:23.2504246Z           "complete": false,
2026-06-02T10:47:23.2504372Z           "evidence": []
2026-06-02T10:47:23.2504478Z         },
2026-06-02T10:47:23.2504593Z         "int": {
2026-06-02T10:47:23.2504712Z           "complete": false,
2026-06-02T10:47:23.2504832Z           "evidence": []
2026-06-02T10:47:23.2504939Z         },
2026-06-02T10:47:23.2505055Z         "unit": {
2026-06-02T10:47:23.2505181Z           "complete": false,
2026-06-02T10:47:23.2505297Z           "evidence": []
2026-06-02T10:47:23.2505410Z         }
2026-06-02T10:47:23.2505658Z       }
2026-06-02T10:47:23.2505774Z     },
2026-06-02T10:47:23.2505880Z     {
2026-06-02T10:47:23.2506122Z       "id": "REQ-PAIR-6",
2026-06-02T10:47:23.2506477Z       "title": "Elevation-gated per-subnet code fetch (UAC/root or elevated agent; else authenticator app)",
2026-06-02T10:47:23.2506602Z       "requiredStages": [],
2026-06-02T10:47:23.2506719Z       "stages": {
2026-06-02T10:47:23.2506825Z         "doc": {
2026-06-02T10:47:23.2506951Z           "complete": false,
2026-06-02T10:47:23.2507066Z           "evidence": []
2026-06-02T10:47:23.2507180Z         },
2026-06-02T10:47:23.2507298Z         "impl": {
2026-06-02T10:47:23.2507526Z           "complete": false,
2026-06-02T10:47:23.2507649Z           "evidence": []
2026-06-02T10:47:23.2507753Z         },
2026-06-02T10:47:23.2507867Z         "int": {
2026-06-02T10:47:23.2507986Z           "complete": false,
2026-06-02T10:47:23.2508112Z           "evidence": []
2026-06-02T10:47:23.2508224Z         },
2026-06-02T10:47:23.2508344Z         "unit": {
2026-06-02T10:47:23.2508470Z           "complete": false,
2026-06-02T10:47:23.2508625Z           "evidence": []
2026-06-02T10:47:23.2508737Z         }
2026-06-02T10:47:23.2508842Z       }
2026-06-02T10:47:23.2508953Z     },
2026-06-02T10:47:23.2509056Z     {
2026-06-02T10:47:23.2509183Z       "id": "REQ-PAIR-7",
2026-06-02T10:47:23.2509411Z       "title": "Subnet icon (inline image metadata, GUI-only consumer)",
2026-06-02T10:47:23.2509534Z       "requiredStages": [],
2026-06-02T10:47:23.2509655Z       "stages": {
2026-06-02T10:47:23.2509762Z         "doc": {
2026-06-02T10:47:23.2509889Z           "complete": false,
2026-06-02T10:47:23.2510010Z           "evidence": []
2026-06-02T10:47:23.2510116Z         },
2026-06-02T10:47:23.2510235Z         "impl": {
2026-06-02T10:47:23.2510352Z           "complete": false,
2026-06-02T10:47:23.2510475Z           "evidence": []
2026-06-02T10:47:23.2510580Z         },
2026-06-02T10:47:23.2510703Z         "int": {
2026-06-02T10:47:23.2510838Z           "complete": false,
2026-06-02T10:47:23.2510958Z           "evidence": []
2026-06-02T10:47:23.2511072Z         },
2026-06-02T10:47:23.2511187Z         "unit": {
2026-06-02T10:47:23.2511315Z           "complete": false,
2026-06-02T10:47:23.2511429Z           "evidence": []
2026-06-02T10:47:23.2511541Z         }
2026-06-02T10:47:23.2511644Z       }
2026-06-02T10:47:23.2511757Z     },
2026-06-02T10:47:23.2511869Z     {
2026-06-02T10:47:23.2511989Z       "id": "REQ-REACH-1",
2026-06-02T10:47:23.2512195Z       "title": "Off-node remote-drive detection + file transfer",
2026-06-02T10:47:23.2512318Z       "requiredStages": [],
2026-06-02T10:47:23.2512441Z       "stages": {
2026-06-02T10:47:23.2512548Z         "doc": {
2026-06-02T10:47:23.2512680Z           "complete": false,
2026-06-02T10:47:23.2512803Z           "evidence": []
2026-06-02T10:47:23.2512908Z         },
2026-06-02T10:47:23.2513026Z         "impl": {
2026-06-02T10:47:23.2513143Z           "complete": false,
2026-06-02T10:47:23.2513276Z           "evidence": []
2026-06-02T10:47:23.2513380Z         },
2026-06-02T10:47:23.2513500Z         "int": {
2026-06-02T10:47:23.2513632Z           "complete": false,
2026-06-02T10:47:23.2513750Z           "evidence": []
2026-06-02T10:47:23.2513866Z         },
2026-06-02T10:47:23.2513975Z         "unit": {
2026-06-02T10:47:23.2514104Z           "complete": false,
2026-06-02T10:47:23.2514220Z           "evidence": []
2026-06-02T10:47:23.2514339Z         }
2026-06-02T10:47:23.2514450Z       }
2026-06-02T10:47:23.2514555Z     },
2026-06-02T10:47:23.2514666Z     {
2026-06-02T10:47:23.2514787Z       "id": "REQ-REACH-2",
2026-06-02T10:47:23.2515002Z       "title": "Remote command execution (deferred, consent-gated)",
2026-06-02T10:47:23.2515124Z       "requiredStages": [],
2026-06-02T10:47:23.2515248Z       "stages": {
2026-06-02T10:47:23.2515362Z         "doc": {
2026-06-02T10:47:23.2515481Z           "complete": false,
2026-06-02T10:47:23.2515603Z           "evidence": []
2026-06-02T10:47:23.2515710Z         },
2026-06-02T10:47:23.2515974Z         "impl": {
2026-06-02T10:47:23.2516096Z           "complete": false,
2026-06-02T10:47:23.2516330Z           "evidence": []
2026-06-02T10:47:23.2516445Z         },
2026-06-02T10:47:23.2516554Z         "int": {
2026-06-02T10:47:23.2516678Z           "complete": false,
2026-06-02T10:47:23.2516793Z           "evidence": []
2026-06-02T10:47:23.2516904Z         },
2026-06-02T10:47:23.2517013Z         "unit": {
2026-06-02T10:47:23.2517139Z           "complete": false,
2026-06-02T10:47:23.2517259Z           "evidence": []
2026-06-02T10:47:23.2517480Z         }
2026-06-02T10:47:23.2517595Z       }
2026-06-02T10:47:23.2517699Z     },
2026-06-02T10:47:23.2517811Z     {
2026-06-02T10:47:23.2517944Z       "id": "REQ-SEAM-ACTIVITY",
2026-06-02T10:47:23.2518206Z       "title": "Activity/idle reported via api sentinels, not PTY quiescence",
2026-06-02T10:47:23.2518338Z       "requiredStages": [
2026-06-02T10:47:23.2518450Z         "impl",
2026-06-02T10:47:23.2518561Z         "unit"
2026-06-02T10:47:23.2518677Z       ],
2026-06-02T10:47:23.2518797Z       "stages": {
2026-06-02T10:47:23.2518905Z         "doc": {
2026-06-02T10:47:23.2519044Z           "complete": false,
2026-06-02T10:47:23.2519172Z           "evidence": []
2026-06-02T10:47:23.2519279Z         },
2026-06-02T10:47:23.2519396Z         "impl": {
2026-06-02T10:47:23.2519515Z           "complete": true,
2026-06-02T10:47:23.2519637Z           "evidence": [
2026-06-02T10:47:23.2519746Z             {
2026-06-02T10:47:23.2519922Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-02T10:47:23.2520041Z               "line": 18
2026-06-02T10:47:23.2520149Z             },
2026-06-02T10:47:23.2520263Z             {
2026-06-02T10:47:23.2520418Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-02T10:47:23.2520543Z               "line": 35
2026-06-02T10:47:23.2520652Z             },
2026-06-02T10:47:23.2520770Z             {
2026-06-02T10:47:23.2520932Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-02T10:47:23.2521053Z               "line": 65
2026-06-02T10:47:23.2521165Z             }
2026-06-02T10:47:23.2521272Z           ]
2026-06-02T10:47:23.2521389Z         },
2026-06-02T10:47:23.2521496Z         "int": {
2026-06-02T10:47:23.2521623Z           "complete": false,
2026-06-02T10:47:23.2521746Z           "evidence": []
2026-06-02T10:47:23.2521851Z         },
2026-06-02T10:47:23.2521963Z         "unit": {
2026-06-02T10:47:23.2522082Z           "complete": true,
2026-06-02T10:47:23.2522204Z           "evidence": [
2026-06-02T10:47:23.2522310Z             {
2026-06-02T10:47:23.2522468Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-02T10:47:23.2522590Z               "line": 170
2026-06-02T10:47:23.2522695Z             },
2026-06-02T10:47:23.2522809Z             {
2026-06-02T10:47:23.2522956Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-02T10:47:23.2523081Z               "line": 184
2026-06-02T10:47:23.2523190Z             },
2026-06-02T10:47:23.2523304Z             {
2026-06-02T10:47:23.2523464Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-02T10:47:23.2523580Z               "line": 193
2026-06-02T10:47:23.2523700Z             }
2026-06-02T10:47:23.2523810Z           ]
2026-06-02T10:47:23.2523922Z         }
2026-06-02T10:47:23.2524029Z       }
2026-06-02T10:47:23.2524143Z     },
2026-06-02T10:47:23.2524256Z     {
2026-06-02T10:47:23.2524393Z       "id": "REQ-SEAM-CAPABILITY",
2026-06-02T10:47:23.2524598Z       "title": "Hostable endpoint-types capability declaration",
2026-06-02T10:47:23.2524719Z       "requiredStages": [
2026-06-02T10:47:23.2524839Z         "impl",
2026-06-02T10:47:23.2524947Z         "unit"
2026-06-02T10:47:23.2525061Z       ],
2026-06-02T10:47:23.2525176Z       "stages": {
2026-06-02T10:47:23.2525284Z         "doc": {
2026-06-02T10:47:23.2525412Z           "complete": false,
2026-06-02T10:47:23.2525526Z           "evidence": []
2026-06-02T10:47:23.2525638Z         },
2026-06-02T10:47:23.2525751Z         "impl": {
2026-06-02T10:47:23.2526025Z           "complete": true,
2026-06-02T10:47:23.2526150Z           "evidence": [
2026-06-02T10:47:23.2526255Z             {
2026-06-02T10:47:23.2526539Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-02T10:47:23.2526655Z               "line": 196
2026-06-02T10:47:23.2526772Z             }
2026-06-02T10:47:23.2526876Z           ]
2026-06-02T10:47:23.2526991Z         },
2026-06-02T10:47:23.2527108Z         "int": {
2026-06-02T10:47:23.2527229Z           "complete": false,
2026-06-02T10:47:23.2527476Z           "evidence": []
2026-06-02T10:47:23.2527584Z         },
2026-06-02T10:47:23.2527705Z         "unit": {
2026-06-02T10:47:23.2527828Z           "complete": true,
2026-06-02T10:47:23.2527955Z           "evidence": [
2026-06-02T10:47:23.2528068Z             {
2026-06-02T10:47:23.2528231Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-02T10:47:23.2528365Z               "line": 311
2026-06-02T10:47:23.2528475Z             }
2026-06-02T10:47:23.2528587Z           ]
2026-06-02T10:47:23.2528704Z         }
2026-06-02T10:47:23.2528817Z       }
2026-06-02T10:47:23.2528928Z     },
2026-06-02T10:47:23.2529037Z     {
2026-06-02T10:47:23.2529175Z       "id": "REQ-SEAM-HISTORY",
2026-06-02T10:47:23.2529424Z       "title": "History subsystem (fetcher / locate-normalize / native store)",
2026-06-02T10:47:23.2529556Z       "requiredStages": [
2026-06-02T10:47:23.2529665Z         "impl",
2026-06-02T10:47:23.2529781Z         "unit",
2026-06-02T10:47:23.2529896Z         "int"
2026-06-02T10:47:23.2530002Z       ],
2026-06-02T10:47:23.2530118Z       "stages": {
2026-06-02T10:47:23.2530225Z         "doc": {
2026-06-02T10:47:23.2530355Z           "complete": false,
2026-06-02T10:47:23.2530478Z           "evidence": []
2026-06-02T10:47:23.2530601Z         },
2026-06-02T10:47:23.2530715Z         "impl": {
2026-06-02T10:47:23.2530835Z           "complete": true,
2026-06-02T10:47:23.2530956Z           "evidence": [
2026-06-02T10:47:23.2531063Z             {
2026-06-02T10:47:23.2531236Z               "path": "crates/spt-live/src/echo.rs",
2026-06-02T10:47:23.2531355Z               "line": 24
2026-06-02T10:47:23.2531474Z             },
2026-06-02T10:47:23.2531588Z             {
2026-06-02T10:47:23.2531743Z               "path": "crates/spt-live/src/history.rs",
2026-06-02T10:47:23.2531866Z               "line": 22
2026-06-02T10:47:23.2531973Z             }
2026-06-02T10:47:23.2532085Z           ]
2026-06-02T10:47:23.2532191Z         },
2026-06-02T10:47:23.2532308Z         "int": {
2026-06-02T10:47:23.2532438Z           "complete": true,
2026-06-02T10:47:23.2532553Z           "evidence": [
2026-06-02T10:47:23.2532664Z             {
2026-06-02T10:47:23.2532825Z               "path": "crates/spt/tests/contract_e2e.rs",
2026-06-02T10:47:23.2532948Z               "line": 172
2026-06-02T10:47:23.2533052Z             }
2026-06-02T10:47:23.2533165Z           ]
2026-06-02T10:47:23.2533276Z         },
2026-06-02T10:47:23.2533384Z         "unit": {
2026-06-02T10:47:23.2533513Z           "complete": true,
2026-06-02T10:47:23.2533638Z           "evidence": [
2026-06-02T10:47:23.2533757Z             {
2026-06-02T10:47:23.2533908Z               "path": "crates/spt-live/src/echo.rs",
2026-06-02T10:47:23.2534037Z               "line": 163
2026-06-02T10:47:23.2534151Z             },
2026-06-02T10:47:23.2534259Z             {
2026-06-02T10:47:23.2534412Z               "path": "crates/spt-live/src/echo.rs",
2026-06-02T10:47:23.2534526Z               "line": 186
2026-06-02T10:47:23.2534641Z             },
2026-06-02T10:47:23.2534748Z             {
2026-06-02T10:47:23.2534901Z               "path": "crates/spt-live/src/echo.rs",
2026-06-02T10:47:23.2535026Z               "line": 195
2026-06-02T10:47:23.2535134Z             },
2026-06-02T10:47:23.2535246Z             {
2026-06-02T10:47:23.2535400Z               "path": "crates/spt-live/src/history.rs",
2026-06-02T10:47:23.2535524Z               "line": 195
2026-06-02T10:47:23.2535630Z             },
2026-06-02T10:47:23.2535743Z             {
2026-06-02T10:47:23.2536071Z               "path": "crates/spt-live/src/history.rs",
2026-06-02T10:47:23.2536189Z               "line": 209
2026-06-02T10:47:23.2536418Z             },
2026-06-02T10:47:23.2536526Z             {
2026-06-02T10:47:23.2536683Z               "path": "crates/spt-live/src/history.rs",
2026-06-02T10:47:23.2536806Z               "line": 228
2026-06-02T10:47:23.2536914Z             },
2026-06-02T10:47:23.2537027Z             {
2026-06-02T10:47:23.2537175Z               "path": "crates/spt-live/src/history.rs",
2026-06-02T10:47:23.2537296Z               "line": 248
2026-06-02T10:47:23.2537513Z             },
2026-06-02T10:47:23.2537629Z             {
2026-06-02T10:47:23.2537786Z               "path": "crates/spt-live/src/history.rs",
2026-06-02T10:47:23.2537904Z               "line": 264
2026-06-02T10:47:23.2538015Z             },
2026-06-02T10:47:23.2538120Z             {
2026-06-02T10:47:23.2538277Z               "path": "crates/spt-live/src/history.rs",
2026-06-02T10:47:23.2538395Z               "line": 279
2026-06-02T10:47:23.2538518Z             }
2026-06-02T10:47:23.2538630Z           ]
2026-06-02T10:47:23.2538739Z         }
2026-06-02T10:47:23.2538862Z       }
2026-06-02T10:47:23.2538967Z     },
2026-06-02T10:47:23.2539082Z     {
2026-06-02T10:47:23.2539211Z       "id": "REQ-SEAM-INJECT",
2026-06-02T10:47:23.2539438Z       "title": "inject-input methods configurable per activity-state",
2026-06-02T10:47:23.2539563Z       "requiredStages": [
2026-06-02T10:47:23.2539675Z         "impl",
2026-06-02T10:47:23.2539789Z         "unit"
2026-06-02T10:47:23.2539897Z       ],
2026-06-02T10:47:23.2540020Z       "stages": {
2026-06-02T10:47:23.2540130Z         "doc": {
2026-06-02T10:47:23.2540263Z           "complete": false,
2026-06-02T10:47:23.2540385Z           "evidence": []
2026-06-02T10:47:23.2540493Z         },
2026-06-02T10:47:23.2540611Z         "impl": {
2026-06-02T10:47:23.2540734Z           "complete": true,
2026-06-02T10:47:23.2540866Z           "evidence": [
2026-06-02T10:47:23.2540975Z             {
2026-06-02T10:47:23.2541145Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-02T10:47:23.2541272Z               "line": 19
2026-06-02T10:47:23.2541388Z             },
2026-06-02T10:47:23.2541498Z             {
2026-06-02T10:47:23.2541648Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-02T10:47:23.2541773Z               "line": 104
2026-06-02T10:47:23.2541880Z             }
2026-06-02T10:47:23.2541997Z           ]
2026-06-02T10:47:23.2542111Z         },
2026-06-02T10:47:23.2542220Z         "int": {
2026-06-02T10:47:23.2542346Z           "complete": false,
2026-06-02T10:47:23.2542461Z           "evidence": []
2026-06-02T10:47:23.2542575Z         },
2026-06-02T10:47:23.2542683Z         "unit": {
2026-06-02T10:47:23.2542815Z           "complete": true,
2026-06-02T10:47:23.2542943Z           "evidence": [
2026-06-02T10:47:23.2543050Z             {
2026-06-02T10:47:23.2543208Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-02T10:47:23.2543323Z               "line": 222
2026-06-02T10:47:23.2543437Z             },
2026-06-02T10:47:23.2543560Z             {
2026-06-02T10:47:23.2543716Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-02T10:47:23.2543840Z               "line": 236
2026-06-02T10:47:23.2543946Z             }
2026-06-02T10:47:23.2544057Z           ]
2026-06-02T10:47:23.2544164Z         }
2026-06-02T10:47:23.2544276Z       }
2026-06-02T10:47:23.2544381Z     },
2026-06-02T10:47:23.2544493Z     {
2026-06-02T10:47:23.2544638Z       "id": "REQ-SEAM-POSTSPAWN",
2026-06-02T10:47:23.2544822Z       "title": "post-spawn / api bind seam with boot nonce",
2026-06-02T10:47:23.2544947Z       "requiredStages": [
2026-06-02T10:47:23.2545058Z         "impl",
2026-06-02T10:47:23.2545174Z         "unit"
2026-06-02T10:47:23.2545279Z       ],
2026-06-02T10:47:23.2545397Z       "stages": {
2026-06-02T10:47:23.2545515Z         "doc": {
2026-06-02T10:47:23.2545637Z           "complete": false,
2026-06-02T10:47:23.2545760Z           "evidence": []
2026-06-02T10:47:23.2545882Z         },
2026-06-02T10:47:23.2546277Z         "impl": {
2026-06-02T10:47:23.2546438Z           "complete": true,
2026-06-02T10:47:23.2546686Z           "evidence": [
2026-06-02T10:47:23.2546800Z             {
2026-06-02T10:47:23.2546965Z               "path": "crates/spt/src/api/startup.rs",
2026-06-02T10:47:23.2547085Z               "line": 17
2026-06-02T10:47:23.2547193Z             },
2026-06-02T10:47:23.2547305Z             {
2026-06-02T10:47:23.2547569Z               "path": "crates/spt/src/api/startup.rs",
2026-06-02T10:47:23.2547692Z               "line": 236
2026-06-02T10:47:23.2547806Z             }
2026-06-02T10:47:23.2547913Z           ]
2026-06-02T10:47:23.2548025Z         },
2026-06-02T10:47:23.2548135Z         "int": {
2026-06-02T10:47:23.2548264Z           "complete": false,
2026-06-02T10:47:23.2548381Z           "evidence": []
2026-06-02T10:47:23.2548496Z         },
2026-06-02T10:47:23.2548614Z         "unit": {
2026-06-02T10:47:23.2548732Z           "complete": true,
2026-06-02T10:47:23.2548851Z           "evidence": [
2026-06-02T10:47:23.2548970Z             {
2026-06-02T10:47:23.2549129Z               "path": "crates/spt/src/api/startup.rs",
2026-06-02T10:47:23.2549249Z               "line": 368
2026-06-02T10:47:23.2549364Z             },
2026-06-02T10:47:23.2549475Z             {
2026-06-02T10:47:23.2549627Z               "path": "crates/spt/src/api/startup.rs",
2026-06-02T10:47:23.2549746Z               "line": 378
2026-06-02T10:47:23.2549858Z             }
2026-06-02T10:47:23.2549974Z           ]
2026-06-02T10:47:23.2550081Z         }
2026-06-02T10:47:23.2550194Z       }
2026-06-02T10:47:23.2550306Z     },
2026-06-02T10:47:23.2550411Z     {
2026-06-02T10:47:23.2550550Z       "id": "REQ-SEAM-PSYCHE",
2026-06-02T10:47:23.2550740Z       "title": "spawn-psyche seam (fresh + resume templates)",
2026-06-02T10:47:23.2550870Z       "requiredStages": [
2026-06-02T10:47:23.2550982Z         "impl",
2026-06-02T10:47:23.2551100Z         "unit",
2026-06-02T10:47:23.2551212Z         "int"
2026-06-02T10:47:23.2551319Z       ],
2026-06-02T10:47:23.2551444Z       "stages": {
2026-06-02T10:47:23.2551554Z         "doc": {
2026-06-02T10:47:23.2551690Z           "complete": false,
2026-06-02T10:47:23.2551806Z           "evidence": []
2026-06-02T10:47:23.2551924Z         },
2026-06-02T10:47:23.2552035Z         "impl": {
2026-06-02T10:47:23.2552165Z           "complete": true,
2026-06-02T10:47:23.2552285Z           "evidence": [
2026-06-02T10:47:23.2552390Z             {
2026-06-02T10:47:23.2552549Z               "path": "crates/spt-live/src/psyche.rs",
2026-06-02T10:47:23.2552664Z               "line": 19
2026-06-02T10:47:23.2552778Z             },
2026-06-02T10:47:23.2552889Z             {
2026-06-02T10:47:23.2553044Z               "path": "crates/spt/src/api/live.rs",
2026-06-02T10:47:23.2553163Z               "line": 10
2026-06-02T10:47:23.2553269Z             },
2026-06-02T10:47:23.2553381Z             {
2026-06-02T10:47:23.2553532Z               "path": "crates/spt/src/api/startup.rs",
2026-06-02T10:47:23.2553657Z               "line": 143
2026-06-02T10:47:23.2553778Z             }
2026-06-02T10:47:23.2553887Z           ]
2026-06-02T10:47:23.2554004Z         },
2026-06-02T10:47:23.2554115Z         "int": {
2026-06-02T10:47:23.2554244Z           "complete": true,
2026-06-02T10:47:23.2554359Z           "evidence": [
2026-06-02T10:47:23.2554478Z             {
2026-06-02T10:47:23.2554646Z               "path": "crates/spt/tests/contract_e2e.rs",
2026-06-02T10:47:23.2554764Z               "line": 171
2026-06-02T10:47:23.2554881Z             }
2026-06-02T10:47:23.2554988Z           ]
2026-06-02T10:47:23.2555099Z         },
2026-06-02T10:47:23.2555209Z         "unit": {
2026-06-02T10:47:23.2555337Z           "complete": true,
2026-06-02T10:47:23.2555458Z           "evidence": [
2026-06-02T10:47:23.2555567Z             {
2026-06-02T10:47:23.2555720Z               "path": "crates/spt-live/src/psyche.rs",
2026-06-02T10:47:23.2555837Z               "line": 161
2026-06-02T10:47:23.2555951Z             },
2026-06-02T10:47:23.2556058Z             {
2026-06-02T10:47:23.2556373Z               "path": "crates/spt-live/src/psyche.rs",
2026-06-02T10:47:23.2556498Z               "line": 168
2026-06-02T10:47:23.2556732Z             },
2026-06-02T10:47:23.2556846Z             {
2026-06-02T10:47:23.2556997Z               "path": "crates/spt-live/src/psyche.rs",
2026-06-02T10:47:23.2557123Z               "line": 191
2026-06-02T10:47:23.2557229Z             },
2026-06-02T10:47:23.2557456Z             {
2026-06-02T10:47:23.2557614Z               "path": "crates/spt-live/src/pulse.rs",
2026-06-02T10:47:23.2557732Z               "line": 105
2026-06-02T10:47:23.2557848Z             },
2026-06-02T10:47:23.2557955Z             {
2026-06-02T10:47:23.2558115Z               "path": "crates/spt-live/src/pulse.rs",
2026-06-02T10:47:23.2558232Z               "line": 122
2026-06-02T10:47:23.2558347Z             },
2026-06-02T10:47:23.2558463Z             {
2026-06-02T10:47:23.2558608Z               "path": "crates/spt-live/src/pulse.rs",
2026-06-02T10:47:23.2558726Z               "line": 136
2026-06-02T10:47:23.2558843Z             }
2026-06-02T10:47:23.2558959Z           ]
2026-06-02T10:47:23.2559072Z         }
2026-06-02T10:47:23.2559186Z       }
2026-06-02T10:47:23.2559299Z     },
2026-06-02T10:47:23.2559403Z     {
2026-06-02T10:47:23.2559535Z       "id": "REQ-SEAM-RESUME",
2026-06-02T10:47:23.2559788Z       "title": "resume-session seam (fresh-with-preload / continue-existing)",
2026-06-02T10:47:23.2559916Z       "requiredStages": [
2026-06-02T10:47:23.2560027Z         "impl",
2026-06-02T10:47:23.2560143Z         "unit"
2026-06-02T10:47:23.2560255Z       ],
2026-06-02T10:47:23.2560366Z       "stages": {
2026-06-02T10:47:23.2560482Z         "doc": {
2026-06-02T10:47:23.2560601Z           "complete": false,
2026-06-02T10:47:23.2560727Z           "evidence": []
2026-06-02T10:47:23.2560833Z         },
2026-06-02T10:47:23.2560953Z         "impl": {
2026-06-02T10:47:23.2561085Z           "complete": true,
2026-06-02T10:47:23.2561202Z           "evidence": [
2026-06-02T10:47:23.2561317Z             {
2026-06-02T10:47:23.2561474Z               "path": "crates/spt-live/src/resume.rs",
2026-06-02T10:47:23.2561608Z               "line": 19
2026-06-02T10:47:23.2561715Z             }
2026-06-02T10:47:23.2561834Z           ]
2026-06-02T10:47:23.2561948Z         },
2026-06-02T10:47:23.2562059Z         "int": {
2026-06-02T10:47:23.2562187Z           "complete": false,
2026-06-02T10:47:23.2562306Z           "evidence": []
2026-06-02T10:47:23.2562420Z         },
2026-06-02T10:47:23.2562529Z         "unit": {
2026-06-02T10:47:23.2562656Z           "complete": true,
2026-06-02T10:47:23.2562776Z           "evidence": [
2026-06-02T10:47:23.2562883Z             {
2026-06-02T10:47:23.2563041Z               "path": "crates/spt-live/src/resume.rs",
2026-06-02T10:47:23.2563158Z               "line": 145
2026-06-02T10:47:23.2563272Z             },
2026-06-02T10:47:23.2563378Z             {
2026-06-02T10:47:23.2563534Z               "path": "crates/spt-live/src/resume.rs",
2026-06-02T10:47:23.2563652Z               "line": 164
2026-06-02T10:47:23.2563766Z             },
2026-06-02T10:47:23.2563878Z             {
2026-06-02T10:47:23.2564030Z               "path": "crates/spt-live/src/resume.rs",
2026-06-02T10:47:23.2564150Z               "line": 182
2026-06-02T10:47:23.2564255Z             },
2026-06-02T10:47:23.2564375Z             {
2026-06-02T10:47:23.2564532Z               "path": "crates/spt-live/src/resume.rs",
2026-06-02T10:47:23.2564646Z               "line": 206
2026-06-02T10:47:23.2564756Z             }
2026-06-02T10:47:23.2564867Z           ]
2026-06-02T10:47:23.2564985Z         }
2026-06-02T10:47:23.2565094Z       }
2026-06-02T10:47:23.2565210Z     },
2026-06-02T10:47:23.2565321Z     {
2026-06-02T10:47:23.2565448Z       "id": "REQ-SEAM-SPAWN",
2026-06-02T10:47:23.2565590Z       "title": "spawn-session seam",
2026-06-02T10:47:23.2565713Z       "requiredStages": [
2026-06-02T10:47:23.2565832Z         "impl",
2026-06-02T10:47:23.2565941Z         "unit"
2026-06-02T10:47:23.2566056Z       ],
2026-06-02T10:47:23.2566319Z       "stages": {
2026-06-02T10:47:23.2566435Z         "doc": {
2026-06-02T10:47:23.2566562Z           "complete": false,
2026-06-02T10:47:23.2566795Z           "evidence": []
2026-06-02T10:47:23.2566911Z         },
2026-06-02T10:47:23.2567022Z         "impl": {
2026-06-02T10:47:23.2567148Z           "complete": true,
2026-06-02T10:47:23.2567270Z           "evidence": [
2026-06-02T10:47:23.2567485Z             {
2026-06-02T10:47:23.2567659Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-02T10:47:23.2567774Z               "line": 20
2026-06-02T10:47:23.2567889Z             }
2026-06-02T10:47:23.2567996Z           ]
2026-06-02T10:47:23.2568109Z         },
2026-06-02T10:47:23.2568225Z         "int": {
2026-06-02T10:47:23.2568349Z           "complete": false,
2026-06-02T10:47:23.2568474Z           "evidence": []
2026-06-02T10:47:23.2568581Z         },
2026-06-02T10:47:23.2568698Z         "unit": {
2026-06-02T10:47:23.2568818Z           "complete": true,
2026-06-02T10:47:23.2568953Z           "evidence": [
2026-06-02T10:47:23.2569066Z             {
2026-06-02T10:47:23.2569225Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-02T10:47:23.2569355Z               "line": 397
2026-06-02T10:47:23.2569466Z             },
2026-06-02T10:47:23.2569581Z             {
2026-06-02T10:47:23.2569766Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-02T10:47:23.2569892Z               "line": 404
2026-06-02T10:47:23.2570006Z             },
2026-06-02T10:47:23.2570113Z             {
2026-06-02T10:47:23.2570274Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-02T10:47:23.2570391Z               "line": 414
2026-06-02T10:47:23.2570507Z             },
2026-06-02T10:47:23.2570615Z             {
2026-06-02T10:47:23.2570781Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-02T10:47:23.2570908Z               "line": 420
2026-06-02T10:47:23.2571018Z             },
2026-06-02T10:47:23.2571133Z             {
2026-06-02T10:47:23.2571302Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-02T10:47:23.2571426Z               "line": 440
2026-06-02T10:47:23.2571541Z             },
2026-06-02T10:47:23.2571654Z             {
2026-06-02T10:47:23.2571820Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-02T10:47:23.2571937Z               "line": 473
2026-06-02T10:47:23.2572053Z             }
2026-06-02T10:47:23.2572161Z           ]
2026-06-02T10:47:23.2572275Z         }
2026-06-02T10:47:23.2572382Z       }
2026-06-02T10:47:23.2572495Z     },
2026-06-02T10:47:23.2572606Z     {
2026-06-02T10:47:23.2572731Z       "id": "REQ-SEAM-UPDATE",
2026-06-02T10:47:23.2572961Z       "title": "Adapter-update avenue (file-pull / delegated command)",
2026-06-02T10:47:23.2573085Z       "requiredStages": [],
2026-06-02T10:47:23.2573208Z       "stages": {
2026-06-02T10:47:23.2573318Z         "doc": {
2026-06-02T10:47:23.2573448Z           "complete": false,
2026-06-02T10:47:23.2573575Z           "evidence": []
2026-06-02T10:47:23.2573682Z         },
2026-06-02T10:47:23.2573810Z         "impl": {
2026-06-02T10:47:23.2573930Z           "complete": false,
2026-06-02T10:47:23.2574060Z           "evidence": []
2026-06-02T10:47:23.2574166Z         },
2026-06-02T10:47:23.2574286Z         "int": {
2026-06-02T10:47:23.2574413Z           "complete": false,
2026-06-02T10:47:23.2574530Z           "evidence": []
2026-06-02T10:47:23.2574644Z         },
2026-06-02T10:47:23.2574755Z         "unit": {
2026-06-02T10:47:23.2574883Z           "complete": false,
2026-06-02T10:47:23.2574996Z           "evidence": []
2026-06-02T10:47:23.2575114Z         }
2026-06-02T10:47:23.2575231Z       }
2026-06-02T10:47:23.2575339Z     },
2026-06-02T10:47:23.2575452Z     {
2026-06-02T10:47:23.2575574Z       "id": "REQ-SEC-1",
2026-06-02T10:47:23.2576108Z       "title": "Per-endpoint access whitelist: origin-node gate, stateful-firewall (reply/outbound exempt), node-now/user-later, outer gate before grants",
2026-06-02T10:47:23.2576236Z       "requiredStages": [],
2026-06-02T10:47:23.2576538Z       "stages": {
2026-06-02T10:47:23.2576656Z         "doc": {
2026-06-02T10:47:23.2576777Z           "complete": false,
2026-06-02T10:47:23.2577017Z           "evidence": []
2026-06-02T10:47:23.2577124Z         },
2026-06-02T10:47:23.2577244Z         "impl": {
2026-06-02T10:47:23.2577485Z           "complete": false,
2026-06-02T10:47:23.2577614Z           "evidence": []
2026-06-02T10:47:23.2577728Z         },
2026-06-02T10:47:23.2577840Z         "int": {
2026-06-02T10:47:23.2577969Z           "complete": false,
2026-06-02T10:47:23.2578087Z           "evidence": []
2026-06-02T10:47:23.2578201Z         },
2026-06-02T10:47:23.2578312Z         "unit": {
2026-06-02T10:47:23.2578437Z           "complete": false,
2026-06-02T10:47:23.2578565Z           "evidence": []
2026-06-02T10:47:23.2578672Z         }
2026-06-02T10:47:23.2578782Z       }
2026-06-02T10:47:23.2578889Z     },
2026-06-02T10:47:23.2579000Z     {
2026-06-02T10:47:23.2579123Z       "id": "REQ-START-1",
2026-06-02T10:47:23.2579402Z       "title": "Adapters never resolve SPT_HOME; binary on PATH; api bridging only",
2026-06-02T10:47:23.2579534Z       "requiredStages": [
2026-06-02T10:47:23.2579655Z         "impl",
2026-06-02T10:47:23.2579771Z         "unit"
2026-06-02T10:47:23.2579877Z       ],
2026-06-02T10:47:23.2579999Z       "stages": {
2026-06-02T10:47:23.2580111Z         "doc": {
2026-06-02T10:47:23.2580243Z           "complete": false,
2026-06-02T10:47:23.2580368Z           "evidence": []
2026-06-02T10:47:23.2580475Z         },
2026-06-02T10:47:23.2580594Z         "impl": {
2026-06-02T10:47:23.2580715Z           "complete": true,
2026-06-02T10:47:23.2580842Z           "evidence": [
2026-06-02T10:47:23.2580947Z             {
2026-06-02T10:47:23.2581110Z               "path": "crates/spt-store/src/seed.rs",
2026-06-02T10:47:23.2581232Z               "line": 12
2026-06-02T10:47:23.2581342Z             },
2026-06-02T10:47:23.2581456Z             {
2026-06-02T10:47:23.2581611Z               "path": "crates/spt/src/api/startup.rs",
2026-06-02T10:47:23.2581746Z               "line": 15
2026-06-02T10:47:23.2581856Z             },
2026-06-02T10:47:23.2581975Z             {
2026-06-02T10:47:23.2582141Z               "path": "crates/spt/src/api/startup.rs",
2026-06-02T10:47:23.2582257Z               "line": 38
2026-06-02T10:47:23.2582374Z             }
2026-06-02T10:47:23.2582480Z           ]
2026-06-02T10:47:23.2582595Z         },
2026-06-02T10:47:23.2582707Z         "int": {
2026-06-02T10:47:23.2582836Z           "complete": false,
2026-06-02T10:47:23.2582958Z           "evidence": []
2026-06-02T10:47:23.2583064Z         },
2026-06-02T10:47:23.2583180Z         "unit": {
2026-06-02T10:47:23.2583305Z           "complete": true,
2026-06-02T10:47:23.2583427Z           "evidence": [
2026-06-02T10:47:23.2583534Z             {
2026-06-02T10:47:23.2583698Z               "path": "crates/spt-store/src/seed.rs",
2026-06-02T10:47:23.2583819Z               "line": 97
2026-06-02T10:47:23.2583930Z             },
2026-06-02T10:47:23.2584047Z             {
2026-06-02T10:47:23.2584205Z               "path": "crates/spt-store/src/seed.rs",
2026-06-02T10:47:23.2584330Z               "line": 112
2026-06-02T10:47:23.2584444Z             }
2026-06-02T10:47:23.2584561Z           ]
2026-06-02T10:47:23.2584675Z         }
2026-06-02T10:47:23.2584783Z       }
2026-06-02T10:47:23.2584894Z     },
2026-06-02T10:47:23.2585001Z     {
2026-06-02T10:47:23.2585130Z       "id": "REQ-START-2",
2026-06-02T10:47:23.2585321Z       "title": "Harness-hosted startup: api seed then listen",
2026-06-02T10:47:23.2585453Z       "requiredStages": [
2026-06-02T10:47:23.2585587Z         "impl",
2026-06-02T10:47:23.2585698Z         "unit",
2026-06-02T10:47:23.2585813Z         "int"
2026-06-02T10:47:23.2585920Z       ],
2026-06-02T10:47:23.2586039Z       "stages": {
2026-06-02T10:47:23.2586152Z         "doc": {
2026-06-02T10:47:23.2586280Z           "complete": false,
2026-06-02T10:47:23.2586406Z           "evidence": []
2026-06-02T10:47:23.2586512Z         },
2026-06-02T10:47:23.2586629Z         "impl": {
2026-06-02T10:47:23.2586911Z           "complete": true,
2026-06-02T10:47:23.2587040Z           "evidence": [
2026-06-02T10:47:23.2587258Z             {
2026-06-02T10:47:23.2587536Z               "path": "crates/spt/src/api/startup.rs",
2026-06-02T10:47:23.2587660Z               "line": 16
2026-06-02T10:47:23.2587770Z             },
2026-06-02T10:47:23.2587882Z             {
2026-06-02T10:47:23.2588037Z               "path": "crates/spt/src/api/startup.rs",
2026-06-02T10:47:23.2588165Z               "line": 81
2026-06-02T10:47:23.2588278Z             },
2026-06-02T10:47:23.2588394Z             {
2026-06-02T10:47:23.2588550Z               "path": "crates/spt/src/api/startup.rs",
2026-06-02T10:47:23.2588668Z               "line": 142
2026-06-02T10:47:23.2588782Z             }
2026-06-02T10:47:23.2588890Z           ]
2026-06-02T10:47:23.2589004Z         },
2026-06-02T10:47:23.2589115Z         "int": {
2026-06-02T10:47:23.2589251Z           "complete": true,
2026-06-02T10:47:23.2589375Z           "evidence": [
2026-06-02T10:47:23.2589494Z             {
2026-06-02T10:47:23.2589668Z               "path": "crates/spt/tests/contract_e2e.rs",
2026-06-02T10:47:23.2589793Z               "line": 121
2026-06-02T10:47:23.2589906Z             }
2026-06-02T10:47:23.2590016Z           ]
2026-06-02T10:47:23.2590128Z         },
2026-06-02T10:47:23.2590251Z         "unit": {
2026-06-02T10:47:23.2590374Z           "complete": true,
2026-06-02T10:47:23.2590503Z           "evidence": [
2026-06-02T10:47:23.2590645Z             {
2026-06-02T10:47:23.2590810Z               "path": "crates/spt/src/api/startup.rs",
2026-06-02T10:47:23.2590927Z               "line": 309
2026-06-02T10:47:23.2591048Z             },
2026-06-02T10:47:23.2591165Z             {
2026-06-02T10:47:23.2591318Z               "path": "crates/spt/src/api/startup.rs",
2026-06-02T10:47:23.2591446Z               "line": 339
2026-06-02T10:47:23.2591560Z             },
2026-06-02T10:47:23.2591677Z             {
2026-06-02T10:47:23.2591835Z               "path": "crates/spt/src/api/startup.rs",
2026-06-02T10:47:23.2591964Z               "line": 346
2026-06-02T10:47:23.2592084Z             }
2026-06-02T10:47:23.2592204Z           ]
2026-06-02T10:47:23.2592320Z         }
2026-06-02T10:47:23.2592430Z       }
2026-06-02T10:47:23.2592545Z     },
2026-06-02T10:47:23.2592654Z     {
2026-06-02T10:47:23.2592784Z       "id": "REQ-START-3",
2026-06-02T10:47:23.2593023Z       "title": "spt-hosted startup: spawn-session then api bind (no file)",
2026-06-02T10:47:23.2593149Z       "requiredStages": [],
2026-06-02T10:47:23.2593271Z       "stages": {
2026-06-02T10:47:23.2593386Z         "doc": {
2026-06-02T10:47:23.2593518Z           "complete": false,
2026-06-02T10:47:23.2593645Z           "evidence": []
2026-06-02T10:47:23.2593757Z         },
2026-06-02T10:47:23.2593879Z         "impl": {
2026-06-02T10:47:23.2594003Z           "complete": false,
2026-06-02T10:47:23.2594128Z           "evidence": []
2026-06-02T10:47:23.2594236Z         },
2026-06-02T10:47:23.2594356Z         "int": {
2026-06-02T10:47:23.2594484Z           "complete": false,
2026-06-02T10:47:23.2594613Z           "evidence": []
2026-06-02T10:47:23.2594735Z         },
2026-06-02T10:47:23.2594850Z         "unit": {
2026-06-02T10:47:23.2594982Z           "complete": false,
2026-06-02T10:47:23.2595107Z           "evidence": []
2026-06-02T10:47:23.2595226Z         }
2026-06-02T10:47:23.2595335Z       }
2026-06-02T10:47:23.2595454Z     },
2026-06-02T10:47:23.2595569Z     {
2026-06-02T10:47:23.2595693Z       "id": "REQ-START-4",
2026-06-02T10:47:23.2595895Z       "title": "Adapter-injected env aliases (SPT/OWL/LIVE)",
2026-06-02T10:47:23.2596019Z       "requiredStages": [
2026-06-02T10:47:23.2596142Z         "impl",
2026-06-02T10:47:23.2596253Z         "unit"
2026-06-02T10:47:23.2596371Z       ],
2026-06-02T10:47:23.2596490Z       "stages": {
2026-06-02T10:47:23.2596603Z         "doc": {
2026-06-02T10:47:23.2596733Z           "complete": false,
2026-06-02T10:47:23.2596855Z           "evidence": []
2026-06-02T10:47:23.2596971Z         },
2026-06-02T10:47:23.2597245Z         "impl": {
2026-06-02T10:47:23.2597491Z           "complete": true,
2026-06-02T10:47:23.2597737Z           "evidence": [
2026-06-02T10:47:23.2597851Z             {
2026-06-02T10:47:23.2598026Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-02T10:47:23.2598145Z               "line": 183
2026-06-02T10:47:23.2598266Z             }
2026-06-02T10:47:23.2598376Z           ]
2026-06-02T10:47:23.2598496Z         },
2026-06-02T10:47:23.2598615Z         "int": {
2026-06-02T10:47:23.2598740Z           "complete": false,
2026-06-02T10:47:23.2598866Z           "evidence": []
2026-06-02T10:47:23.2598975Z         },
2026-06-02T10:47:23.2599094Z         "unit": {
2026-06-02T10:47:23.2599219Z           "complete": true,
2026-06-02T10:47:23.2599349Z           "evidence": [
2026-06-02T10:47:23.2599463Z             {
2026-06-02T10:47:23.2599626Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-02T10:47:23.2599753Z               "line": 324
2026-06-02T10:47:23.2599870Z             }
2026-06-02T10:47:23.2599987Z           ]
2026-06-02T10:47:23.2600095Z         }
2026-06-02T10:47:23.2600217Z       }
2026-06-02T10:47:23.2600330Z     },
2026-06-02T10:47:23.2600440Z     {
2026-06-02T10:47:23.2600571Z       "id": "REQ-TERM-1",
2026-06-02T10:47:23.2600811Z       "title": "Process-supervisor terminal wrapper hosting broker PTYs",
2026-06-02T10:47:23.2600943Z       "requiredStages": [
2026-06-02T10:47:23.2601064Z         "impl",
2026-06-02T10:47:23.2601186Z         "unit"
2026-06-02T10:47:23.2601300Z       ],
2026-06-02T10:47:23.2601414Z       "stages": {
2026-06-02T10:47:23.2601532Z         "doc": {
2026-06-02T10:47:23.2601660Z           "complete": false,
2026-06-02T10:47:23.2601790Z           "evidence": []
2026-06-02T10:47:23.2601898Z         },
2026-06-02T10:47:23.2602016Z         "impl": {
2026-06-02T10:47:23.2602145Z           "complete": true,
2026-06-02T10:47:23.2602265Z           "evidence": [
2026-06-02T10:47:23.2602384Z             {
2026-06-02T10:47:23.2602560Z               "path": "crates/spt-term/src/pty.rs",
2026-06-02T10:47:23.2602689Z               "line": 61
2026-06-02T10:47:23.2602804Z             },
2026-06-02T10:47:23.2602926Z             {
2026-06-02T10:47:23.2603083Z               "path": "crates/spt-term/src/pty.rs",
2026-06-02T10:47:23.2603201Z               "line": 169
2026-06-02T10:47:23.2603319Z             },
2026-06-02T10:47:23.2603430Z             {
2026-06-02T10:47:23.2603599Z               "path": "crates/spt-term/src/surface.rs",
2026-06-02T10:47:23.2603717Z               "line": 95
2026-06-02T10:47:23.2603835Z             }
2026-06-02T10:47:23.2603951Z           ]
2026-06-02T10:47:23.2604059Z         },
2026-06-02T10:47:23.2604181Z         "int": {
2026-06-02T10:47:23.2604306Z           "complete": false,
2026-06-02T10:47:23.2604433Z           "evidence": []
2026-06-02T10:47:23.2604541Z         },
2026-06-02T10:47:23.2604664Z         "unit": {
2026-06-02T10:47:23.2604792Z           "complete": true,
2026-06-02T10:47:23.2604911Z           "evidence": [
2026-06-02T10:47:23.2605034Z             {
2026-06-02T10:47:23.2605207Z               "path": "crates/spt-term/tests/surface.rs",
2026-06-02T10:47:23.2605340Z               "line": 28
2026-06-02T10:47:23.2605451Z             },
2026-06-02T10:47:23.2605568Z             {
2026-06-02T10:47:23.2605735Z               "path": "crates/spt-term/tests/surface.rs",
2026-06-02T10:47:23.2605853Z               "line": 60
2026-06-02T10:47:23.2605974Z             }
2026-06-02T10:47:23.2606082Z           ]
2026-06-02T10:47:23.2606199Z         }
2026-06-02T10:47:23.2606309Z       }
2026-06-02T10:47:23.2606428Z     },
2026-06-02T10:47:23.2606544Z     {
2026-06-02T10:47:23.2606667Z       "id": "REQ-TERM-2",
2026-06-02T10:47:23.2606927Z       "title": "session-surface abstraction; send-keys + send-line injection",
2026-06-02T10:47:23.2607052Z       "requiredStages": [
2026-06-02T10:47:23.2607174Z         "impl",
2026-06-02T10:47:23.2607286Z         "unit"
2026-06-02T10:47:23.2607519Z       ],
2026-06-02T10:47:23.2607645Z       "stages": {
2026-06-02T10:47:23.2607913Z         "doc": {
2026-06-02T10:47:23.2608045Z           "complete": false,
2026-06-02T10:47:23.2608285Z           "evidence": []
2026-06-02T10:47:23.2608403Z         },
2026-06-02T10:47:23.2608517Z         "impl": {
2026-06-02T10:47:23.2608650Z           "complete": true,
2026-06-02T10:47:23.2608774Z           "evidence": [
2026-06-02T10:47:23.2608885Z             {
2026-06-02T10:47:23.2609056Z               "path": "crates/spt-term/src/surface.rs",
2026-06-02T10:47:23.2609176Z               "line": 112
2026-06-02T10:47:23.2609297Z             },
2026-06-02T10:47:23.2609408Z             {
2026-06-02T10:47:23.2609575Z               "path": "crates/spt-term/src/surface.rs",
2026-06-02T10:47:23.2609700Z               "line": 122
2026-06-02T10:47:23.2609812Z             }
2026-06-02T10:47:23.2609929Z           ]
2026-06-02T10:47:23.2610039Z         },
2026-06-02T10:47:23.2610161Z         "int": {
2026-06-02T10:47:23.2610285Z           "complete": false,
2026-06-02T10:47:23.2610424Z           "evidence": []
2026-06-02T10:47:23.2610538Z         },
2026-06-02T10:47:23.2610651Z         "unit": {
2026-06-02T10:47:23.2610785Z           "complete": true,
2026-06-02T10:47:23.2610903Z           "evidence": [
2026-06-02T10:47:23.2611022Z             {
2026-06-02T10:47:23.2611186Z               "path": "crates/spt-term/tests/inject.rs",
2026-06-02T10:47:23.2611313Z               "line": 46
2026-06-02T10:47:23.2611431Z             },
2026-06-02T10:47:23.2611543Z             {
2026-06-02T10:47:23.2611709Z               "path": "crates/spt-term/tests/inject.rs",
2026-06-02T10:47:23.2611828Z               "line": 71
2026-06-02T10:47:23.2611947Z             }
2026-06-02T10:47:23.2612057Z           ]
2026-06-02T10:47:23.2612177Z         }
2026-06-02T10:47:23.2612295Z       }
2026-06-02T10:47:23.2612404Z     },
2026-06-02T10:47:23.2612522Z     {
2026-06-02T10:47:23.2612644Z       "id": "REQ-TERM-3",
2026-06-02T10:47:23.2612857Z       "title": "Byte-stream remote terminal streaming for v1",
2026-06-02T10:47:23.2612999Z       "requiredStages": [
2026-06-02T10:47:23.2613119Z         "impl",
2026-06-02T10:47:23.2613242Z         "unit"
2026-06-02T10:47:23.2613352Z       ],
2026-06-02T10:47:23.2613476Z       "stages": {
2026-06-02T10:47:23.2613591Z         "doc": {
2026-06-02T10:47:23.2613724Z           "complete": false,
2026-06-02T10:47:23.2613844Z           "evidence": []
2026-06-02T10:47:23.2613962Z         },
2026-06-02T10:47:23.2614083Z         "impl": {
2026-06-02T10:47:23.2614206Z           "complete": true,
2026-06-02T10:47:23.2614332Z           "evidence": [
2026-06-02T10:47:23.2614442Z             {
2026-06-02T10:47:23.2614607Z               "path": "crates/spt-term/src/stream.rs",
2026-06-02T10:47:23.2614723Z               "line": 71
2026-06-02T10:47:23.2614840Z             }
2026-06-02T10:47:23.2614956Z           ]
2026-06-02T10:47:23.2615064Z         },
2026-06-02T10:47:23.2615182Z         "int": {
2026-06-02T10:47:23.2615305Z           "complete": false,
2026-06-02T10:47:23.2615439Z           "evidence": []
2026-06-02T10:47:23.2615550Z         },
2026-06-02T10:47:23.2615666Z         "unit": {
2026-06-02T10:47:23.2615800Z           "complete": true,
2026-06-02T10:47:23.2615917Z           "evidence": [
2026-06-02T10:47:23.2616032Z             {
2026-06-02T10:47:23.2616189Z               "path": "crates/spt-term/tests/stream.rs",
2026-06-02T10:47:23.2616312Z               "line": 37
2026-06-02T10:47:23.2616421Z             },
2026-06-02T10:47:23.2616543Z             {
2026-06-02T10:47:23.2616703Z               "path": "crates/spt-term/tests/stream.rs",
2026-06-02T10:47:23.2616821Z               "line": 67
2026-06-02T10:47:23.2616940Z             }
2026-06-02T10:47:23.2617048Z           ]
2026-06-02T10:47:23.2617163Z         }
2026-06-02T10:47:23.2617271Z       }
2026-06-02T10:47:23.2617499Z     },
2026-06-02T10:47:23.2617613Z     {
2026-06-02T10:47:23.2617733Z       "id": "REQ-TERM-4",
2026-06-02T10:47:23.2618381Z       "title": "Live activity buffer (PTY digest): adapter-supplied patterns over broker PTY, spt digest pull + delta-stream, opt-in Path-B log",
2026-06-02T10:47:23.2618509Z       "requiredStages": [
2026-06-02T10:47:23.2618752Z         "impl",
2026-06-02T10:47:23.2618863Z         "unit"
2026-06-02T10:47:23.2618983Z       ],
2026-06-02T10:47:23.2619109Z       "stages": {
2026-06-02T10:47:23.2619225Z         "doc": {
2026-06-02T10:47:23.2619359Z           "complete": false,
2026-06-02T10:47:23.2619477Z           "evidence": []
2026-06-02T10:47:23.2619594Z         },
2026-06-02T10:47:23.2619708Z         "impl": {
2026-06-02T10:47:23.2619839Z           "complete": true,
2026-06-02T10:47:23.2619965Z           "evidence": [
2026-06-02T10:47:23.2620076Z             {
2026-06-02T10:47:23.2620243Z               "path": "crates/spt-term/src/digest.rs",
2026-06-02T10:47:23.2620361Z               "line": 156
2026-06-02T10:47:23.2620479Z             },
2026-06-02T10:47:23.2620588Z             {
2026-06-02T10:47:23.2620749Z               "path": "crates/spt-term/src/digest.rs",
2026-06-02T10:47:23.2620878Z               "line": 198
2026-06-02T10:47:23.2620990Z             },
2026-06-02T10:47:23.2621108Z             {
2026-06-02T10:47:23.2621267Z               "path": "crates/spt-term/src/digest.rs",
2026-06-02T10:47:23.2621393Z               "line": 225
2026-06-02T10:47:23.2621502Z             }
2026-06-02T10:47:23.2621622Z           ]
2026-06-02T10:47:23.2621739Z         },
2026-06-02T10:47:23.2621853Z         "int": {
2026-06-02T10:47:23.2621985Z           "complete": false,
2026-06-02T10:47:23.2622101Z           "evidence": []
2026-06-02T10:47:23.2622222Z         },
2026-06-02T10:47:23.2622334Z         "unit": {
2026-06-02T10:47:23.2622464Z           "complete": true,
2026-06-02T10:47:23.2622590Z           "evidence": [
2026-06-02T10:47:23.2622702Z             {
2026-06-02T10:47:23.2622860Z               "path": "crates/spt-term/src/digest.rs",
2026-06-02T10:47:23.2622976Z               "line": 380
2026-06-02T10:47:23.2623095Z             },
2026-06-02T10:47:23.2623203Z             {
2026-06-02T10:47:23.2623364Z               "path": "crates/spt-term/src/digest.rs",
2026-06-02T10:47:23.2623486Z               "line": 401
2026-06-02T10:47:23.2623601Z             },
2026-06-02T10:47:23.2623720Z             {
2026-06-02T10:47:23.2623869Z               "path": "crates/spt-term/src/digest.rs",
2026-06-02T10:47:23.2623997Z               "line": 414
2026-06-02T10:47:23.2624116Z             },
2026-06-02T10:47:23.2624229Z             {
2026-06-02T10:47:23.2624388Z               "path": "crates/spt-term/src/digest.rs",
2026-06-02T10:47:23.2624505Z               "line": 433
2026-06-02T10:47:23.2624621Z             },
2026-06-02T10:47:23.2624735Z             {
2026-06-02T10:47:23.2624897Z               "path": "crates/spt-term/src/digest.rs",
2026-06-02T10:47:23.2625023Z               "line": 460
2026-06-02T10:47:23.2625131Z             },
2026-06-02T10:47:23.2625246Z             {
2026-06-02T10:47:23.2625404Z               "path": "crates/spt-term/tests/digest.rs",
2026-06-02T10:47:23.2625530Z               "line": 32
2026-06-02T10:47:23.2625651Z             }
2026-06-02T10:47:23.2625767Z           ]
2026-06-02T10:47:23.2625888Z         }
2026-06-02T10:47:23.2625999Z       }
2026-06-02T10:47:23.2626116Z     },
2026-06-02T10:47:23.2626224Z     {
2026-06-02T10:47:23.2626355Z       "id": "REQ-UPD-1",
2026-06-02T10:47:23.2626525Z       "title": "Peer-propagated update over P2P",
2026-06-02T10:47:23.2626662Z       "requiredStages": [],
2026-06-02T10:47:23.2626785Z       "stages": {
2026-06-02T10:47:23.2626899Z         "doc": {
2026-06-02T10:47:23.2627024Z           "complete": false,
2026-06-02T10:47:23.2627143Z           "evidence": []
2026-06-02T10:47:23.2627262Z         },
2026-06-02T10:47:23.2627489Z         "impl": {
2026-06-02T10:47:23.2627622Z           "complete": false,
2026-06-02T10:47:23.2627747Z           "evidence": []
2026-06-02T10:47:23.2627859Z         },
2026-06-02T10:47:23.2627976Z         "int": {
2026-06-02T10:47:23.2628102Z           "complete": false,
2026-06-02T10:47:23.2628227Z           "evidence": []
2026-06-02T10:47:23.2631599Z         },
2026-06-02T10:47:23.2631749Z         "unit": {
2026-06-02T10:47:23.2631997Z           "complete": false,
2026-06-02T10:47:23.2632127Z           "evidence": []
2026-06-02T10:47:23.2632242Z         }
2026-06-02T10:47:23.2632351Z       }
2026-06-02T10:47:23.2632466Z     },
2026-06-02T10:47:23.2632574Z     {
2026-06-02T10:47:23.2632706Z       "id": "REQ-UPD-2",
2026-06-02T10:47:23.2632920Z       "title": "All binaries signature-verified before handoff",
2026-06-02T10:47:23.2633055Z       "requiredStages": [],
2026-06-02T10:47:23.2633176Z       "stages": {
2026-06-02T10:47:23.2633289Z         "doc": {
2026-06-02T10:47:23.2633420Z           "complete": false,
2026-06-02T10:47:23.2633539Z           "evidence": []
2026-06-02T10:47:23.2633653Z         },
2026-06-02T10:47:23.2633768Z         "impl": {
2026-06-02T10:47:23.2633897Z           "complete": false,
2026-06-02T10:47:23.2634018Z           "evidence": []
2026-06-02T10:47:23.2634128Z         },
2026-06-02T10:47:23.2634256Z         "int": {
2026-06-02T10:47:23.2634377Z           "complete": false,
2026-06-02T10:47:23.2634501Z           "evidence": []
2026-06-02T10:47:23.2634619Z         },
2026-06-02T10:47:23.2634741Z         "unit": {
2026-06-02T10:47:23.2634871Z           "complete": false,
2026-06-02T10:47:23.2634991Z           "evidence": []
2026-06-02T10:47:23.2635109Z         }
2026-06-02T10:47:23.2635217Z       }
2026-06-02T10:47:23.2635330Z     },
2026-06-02T10:47:23.2635437Z     {
2026-06-02T10:47:23.2635567Z       "id": "REQ-UPD-3",
2026-06-02T10:47:23.2635817Z       "title": "No endpoint process terminates/suspends during self-update",
2026-06-02T10:47:23.2635955Z       "requiredStages": [],
2026-06-02T10:47:23.2636071Z       "stages": {
2026-06-02T10:47:23.2636184Z         "doc": {
2026-06-02T10:47:23.2636316Z           "complete": false,
2026-06-02T10:47:23.2636439Z           "evidence": []
2026-06-02T10:47:23.2636557Z         },
2026-06-02T10:47:23.2636678Z         "impl": {
2026-06-02T10:47:23.2636806Z           "complete": false,
2026-06-02T10:47:23.2636932Z           "evidence": []
2026-06-02T10:47:23.2637042Z         },
2026-06-02T10:47:23.2637172Z         "int": {
2026-06-02T10:47:23.2637291Z           "complete": false,
2026-06-02T10:47:23.2637580Z           "evidence": []
2026-06-02T10:47:23.2637689Z         },
2026-06-02T10:47:23.2637809Z         "unit": {
2026-06-02T10:47:23.2637939Z           "complete": false,
2026-06-02T10:47:23.2638060Z           "evidence": []
2026-06-02T10:47:23.2638183Z         }
2026-06-02T10:47:23.2638292Z       }
2026-06-02T10:47:23.2638404Z     },
2026-06-02T10:47:23.2638510Z     {
2026-06-02T10:47:23.2638640Z       "id": "REQ-UPD-4",
2026-06-02T10:47:23.2638908Z       "title": "Update gated on user confirmation by default; opt-in full-auto",
2026-06-02T10:47:23.2639033Z       "requiredStages": [],
2026-06-02T10:47:23.2639151Z       "stages": {
2026-06-02T10:47:23.2639262Z         "doc": {
2026-06-02T10:47:23.2639391Z           "complete": false,
2026-06-02T10:47:23.2639521Z           "evidence": []
2026-06-02T10:47:23.2639638Z         },
2026-06-02T10:47:23.2639757Z         "impl": {
2026-06-02T10:47:23.2639892Z           "complete": false,
2026-06-02T10:47:23.2640018Z           "evidence": []
2026-06-02T10:47:23.2640126Z         },
2026-06-02T10:47:23.2640248Z         "int": {
2026-06-02T10:47:23.2640373Z           "complete": false,
2026-06-02T10:47:23.2640499Z           "evidence": []
2026-06-02T10:47:23.2640611Z         },
2026-06-02T10:47:23.2640721Z         "unit": {
2026-06-02T10:47:23.2640847Z           "complete": false,
2026-06-02T10:47:23.2640965Z           "evidence": []
2026-06-02T10:47:23.2641081Z         }
2026-06-02T10:47:23.2641189Z       }
2026-06-02T10:47:23.2641305Z     },
2026-06-02T10:47:23.2641417Z     {
2026-06-02T10:47:23.2641538Z       "id": "REQ-UPD-5",
2026-06-02T10:47:23.2641751Z       "title": "spt-core ripple-updates registered adapters",
2026-06-02T10:47:23.2641877Z       "requiredStages": [],
2026-06-02T10:47:23.2641999Z       "stages": {
2026-06-02T10:47:23.2642324Z         "doc": {
2026-06-02T10:47:23.2642456Z           "complete": false,
2026-06-02T10:47:23.2642703Z           "evidence": []
2026-06-02T10:47:23.2642814Z         },
2026-06-02T10:47:23.2642932Z         "impl": {
2026-06-02T10:47:23.2643053Z           "complete": false,
2026-06-02T10:47:23.2643175Z           "evidence": []
2026-06-02T10:47:23.2643285Z         },
2026-06-02T10:47:23.2643406Z         "int": {
2026-06-02T10:47:23.2643533Z           "complete": false,
2026-06-02T10:47:23.2643651Z           "evidence": []
2026-06-02T10:47:23.2643765Z         },
2026-06-02T10:47:23.2643876Z         "unit": {
2026-06-02T10:47:23.2644008Z           "complete": false,
2026-06-02T10:47:23.2644127Z           "evidence": []
2026-06-02T10:47:23.2644245Z         }
2026-06-02T10:47:23.2644358Z       }
2026-06-02T10:47:23.2644468Z     }
2026-06-02T10:47:23.2644582Z   ],
2026-06-02T10:47:23.2644698Z   "findings": [
2026-06-02T10:47:23.2644813Z     {
2026-06-02T10:47:23.2644939Z       "code": "parse_error",
2026-06-02T10:47:23.2645078Z       "severity": "must",
2026-06-02T10:47:23.2645233Z       "path": "docs/TRACEABILITY.md",
2026-06-02T10:47:23.2645353Z       "line": 12,
2026-06-02T10:47:23.2645567Z       "message": "Tag-shaped token does not match [stage->REQ-ID]"
2026-06-02T10:47:23.2645676Z     },
2026-06-02T10:47:23.2645786Z     {
2026-06-02T10:47:23.2645912Z       "code": "parse_error",
2026-06-02T10:47:23.2646043Z       "severity": "must",
2026-06-02T10:47:23.2646187Z       "path": "docs/TRACEABILITY.md",
2026-06-02T10:47:23.2646303Z       "line": 24,
2026-06-02T10:47:23.2646503Z       "message": "Tag-shaped token does not match [stage->REQ-ID]"
2026-06-02T10:47:23.2646610Z     },
2026-06-02T10:47:23.2646726Z     {
2026-06-02T10:47:23.2646848Z       "code": "parse_error",
2026-06-02T10:47:23.2646974Z       "severity": "must",
2026-06-02T10:47:23.2647115Z       "path": "docs/TRACEABILITY.md",
2026-06-02T10:47:23.2647230Z       "line": 25,
2026-06-02T10:47:23.2647555Z       "message": "Tag-shaped token does not match [stage->REQ-ID]"
2026-06-02T10:47:23.2647664Z     },
2026-06-02T10:47:23.2647783Z     {
2026-06-02T10:47:23.2647922Z       "code": "parse_error",
2026-06-02T10:47:23.2648057Z       "severity": "must",
2026-06-02T10:47:23.2648198Z       "path": "docs/TRACEABILITY.md",
2026-06-02T10:47:23.2648313Z       "line": 29,
2026-06-02T10:47:23.2648513Z       "message": "Tag-shaped token does not match [stage->REQ-ID]"
2026-06-02T10:47:23.2648623Z     },
2026-06-02T10:47:23.2648738Z     {
2026-06-02T10:47:23.2648859Z       "code": "parse_error",
2026-06-02T10:47:23.2648986Z       "severity": "must",
2026-06-02T10:47:23.2649123Z       "path": "docs/TRACEABILITY.md",
2026-06-02T10:47:23.2649239Z       "line": 33,
2026-06-02T10:47:23.2649435Z       "message": "Tag-shaped token does not match [stage->REQ-ID]"
2026-06-02T10:47:23.2649551Z     },
2026-06-02T10:47:23.2649666Z     {
2026-06-02T10:47:23.2649797Z       "code": "parse_error",
2026-06-02T10:47:23.2649917Z       "severity": "must",
2026-06-02T10:47:23.2650060Z       "path": "docs/TRACEABILITY.md",
2026-06-02T10:47:23.2650171Z       "line": 37,
2026-06-02T10:47:23.2650364Z       "message": "Tag-shaped token does not match [stage->REQ-ID]"
2026-06-02T10:47:23.2650470Z     },
2026-06-02T10:47:23.2650581Z     {
2026-06-02T10:47:23.2650708Z       "code": "parse_error",
2026-06-02T10:47:23.2650832Z       "severity": "must",
2026-06-02T10:47:23.2650968Z       "path": "docs/TRACEABILITY.md",
2026-06-02T10:47:23.2651079Z       "line": 45,
2026-06-02T10:47:23.2651276Z       "message": "Tag-shaped token does not match [stage->REQ-ID]"
2026-06-02T10:47:23.2651382Z     }
2026-06-02T10:47:23.2651498Z   ]
2026-06-02T10:47:23.2651611Z }
2026-06-02T10:47:23.2663855Z ##[error]Process completed with exit code 1.
2026-06-02T10:47:23.2785439Z Post job cleanup.
2026-06-02T10:47:23.3803656Z [command]/usr/bin/git version
2026-06-02T10:47:23.3845133Z git version 2.54.0
2026-06-02T10:47:23.3891344Z Temporarily overriding HOME='/home/runner/work/_temp/0a2084a2-f0be-4c79-a274-d0df21829b7b' before making global git config changes
2026-06-02T10:47:23.3892308Z Adding repository directory to the temporary git global config as a safe directory
2026-06-02T10:47:23.3898991Z [command]/usr/bin/git config --global --add safe.directory /home/runner/work/spt-core/spt-core
2026-06-02T10:47:23.3949569Z [command]/usr/bin/git config --local --name-only --get-regexp core\.sshCommand
2026-06-02T10:47:23.3988156Z [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' || :"
2026-06-02T10:47:23.4256697Z [command]/usr/bin/git config --local --name-only --get-regexp http\.https\:\/\/github\.com\/\.extraheader
2026-06-02T10:47:23.4294807Z http.https://github.com/.extraheader
2026-06-02T10:47:23.4309852Z [command]/usr/bin/git config --local --unset-all http.https://github.com/.extraheader
2026-06-02T10:47:23.4345453Z [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' || :"
2026-06-02T10:47:23.4597067Z [command]/usr/bin/git config --local --name-only --get-regexp ^includeIf\.gitdir:
2026-06-02T10:47:23.4634013Z [command]/usr/bin/git submodule foreach --recursive git config --local --show-origin --name-only --get-regexp remote.origin.url
2026-06-02T10:47:23.4997998Z Cleaning up orphan processes
2026-06-02T10:47:23.5283897Z ##[warning]Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/checkout@v4. Actions will be forced to run with Node.js 24 by default starting June 16th, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
